基于固态硬盘的IO性能测试方法、装置和计算机设备与流程

文档序号:18985521发布日期:2019-10-29 04:20阅读:303来源:国知局
基于固态硬盘的IO性能测试方法、装置和计算机设备与流程

本发明涉及固态硬盘技术领域,特别是涉及一种基于固态硬盘的io性能测试方法、装置、计算机设备和存储介质。



背景技术:

目前,ssd(solidstatedrive,固态硬盘)已经被广泛应用于各种场合,由于其在性能、功耗、环境适应性等方面的优秀指标,正逐步替换传统的硬盘。固态硬盘的性能测试是固态硬盘出厂前必须经过的环节,如何提高测试效率是现在各大固态硬盘厂商待以解决的问题。

在传统技术中,测试ssd的io性能时所采用的方法是每次只测试一种条件下io性能,这就导致了该方法不能一次性自动检测出ssd在何种条件下有性能瓶颈缺陷,进而影响了固态硬盘的测试效率。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种基于固态硬盘的io性能测试方法、装置、计算机设备和存储介质。

一种基于固态硬盘的io性能测试方法,所述方法包括:

获取基于固态硬盘的io性能测试请求;

根据所述基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合;

在进行读写性能测试时,根据设置的所述多个不同条件组合依次进行测试;

输出所述多个不同条件组合下对应的读写测试性能数据。

在其中一个实施例中,所述根据所述基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合的步骤包括:

通过软件工具提供的设置测试条件交互接口设置对应的不同条件组合。

在其中一个实施例中,所述根据所述基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合的步骤还包括:

设置多个不同条件组合的起始条件、终止条件以及步长;

设置每次读写测试的测试时长以及测试逻辑范围。

在其中一个实施例中,所述输出所述多个不同条件组合下对应的读写测试性能数据的步骤包括:

获取所述多个不同条件组合下对应的读写测试性能数据;

根据所述条件组合以及对应条件组合下的读写测试性能数据生成测试结果列表;

输出所述测试结果列表。

一种基于固态硬盘的io性能测试装置,所述装置包括:

获取模块,所述获取模块用于获取基于固态硬盘的io性能测试请求;

设置模块,所述设置模块用于根据所述基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合;

测试模块,所述测试模块用于在进行读写性能测试时,根据设置的所述多个不同条件组合依次进行测试;

输出模块,所述输出模块用于输出所述多个不同条件组合下对应的读写测试性能数据。

在其中一个实施例中,所述设置模块还用于:

通过软件工具提供的设置测试条件交互接口设置对应的不同条件组合。

在其中一个实施例中,所述设置模块还用于:

设置多个不同条件组合的起始条件、终止条件以及步长;

设置每次读写测试的测试时长以及测试逻辑范围。

在其中一个实施例中,所述输出模块还用于:

获取所述多个不同条件组合下对应的读写测试性能数据;

根据所述条件组合以及对应条件组合下的读写测试性能数据生成测试结果列表;

输出所述测试结果列表。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项方法的步骤。

上述基于固态硬盘的io性能测试方法、装置、计算机设备和存储介质,通过获取基于固态硬盘的io性能测试请求;根据所述基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合;在进行读写性能测试时,根据设置的所述多个不同条件组合依次进行测试;输出所述多个不同条件组合下对应的读写测试性能数据。本发明针对现有测试方法的缺点,提出了一种新的测试方案,可以一次性自动扫描测试出ssd在不同条件下的io性能,极大的提高了测试效率,并极大提高了分析ssd的性能瓶颈的便利性。

附图说明

图1为基于固态硬盘的io性能测试方法的应用环境图;

图2为一个实施例中基于固态硬盘的io性能测试方法的流程示意图;

图3为另一个实施例中基于固态硬盘的io性能测试方法的流程示意图;

图4为再一个实施例中基于固态硬盘的io性能测试方法的流程示意图;

图5为一个实施例中基于固态硬盘的io性能测试装置的结构框图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在传统技术中,测试ssd的io性能时所采用的方法是每次只测试一种条件下io性能,该方法不能一次性自动检测出ssd在何种条件下有性能瓶颈缺陷。

本发明提出一种新的测试方案,可以一次性自动扫描测试出ssd在不同条件下的io性能,极大的提高了测试效率,并极大提高了分析ssd的性能瓶颈的便利性。该方法可以应用于如图1所示的应用环境中。具体地,计算机设备110用于执行对应的测试程序,计算机设备110可与多个待测的固态硬盘120连接。计算机设备110上存储有相应的计算机程序用于执行相应的对固态硬盘的io性能测试方法。

在一个实施例中,如图2所示,提供了一种基于固态硬盘的io性能测试方法,该方法包括:

步骤202,获取基于固态硬盘的io性能测试请求;

步骤204,根据基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合;

步骤206,在进行读写性能测试时,根据设置的多个不同条件组合依次进行测试;

步骤208,输出多个不同条件组合下对应的读写测试性能数据。

具体地,以该方法应用于如图1所示的计算机设备110中对该测试方法进行说明。首先,计算机设备获取基于固态硬盘的io性能测试请求,该请求中可包括具体的测试对象以及对应的测试内容。然后,根据该测试请求对测试条件进行配置。具体的配置可以通过软件工具提供设置测试条件的交互接口实现。配置的内容包括条件循环的起始与终止条件、步长等。接着,设置每次读写测试的测试时长、测试逻辑范围。测试io性能时,循环设置io的不同条件组合,并在每种组合的条件下测试读写性能。最后,当上述测试条件均设置完成后,点击开始测试进行对应条件的循环测试。软件会自动进行上述设定条件下的各个组合测试,并输出上述各条件下的读写测试性能数据。

在本实施例中,通过获取基于固态硬盘的io性能测试请求;根据基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合;在进行读写性能测试时,根据设置的多个不同条件组合依次进行测试;输出多个不同条件组合下对应的读写测试性能数据。本实施例针对现有测试方法的缺点,提出了一种新的测试方案,可以一次性自动扫描测试出ssd在不同条件下的io性能,极大的提高了测试效率,并极大提高了分析ssd的性能瓶颈的便利性。

在一个实施例中,如图3所示,提供了一种基于固态硬盘的io性能测试方法,该方法中根据基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合的步骤包括:

步骤302,通过软件工具提供的设置测试条件交互接口设置对应的不同条件组合;

步骤304,设置多个不同条件组合的起始条件、终止条件以及步长;

步骤306,设置每次读写测试的测试时长以及测试逻辑范围。

具体地,本实施例提供的测试方法具体包括如下步骤:

1、软件工具提供设置测试条件的交互接口。

2、测试时设置好条件循环的起始与终止条件、步长等。

3、设置每次读写测试的测试时长、测试逻辑范围。

4、点击开始测试后,软件会自动进行上述设定条件下的各个组合测试。

5、输出上述各条件下的读写测试性能数据。

在本实施例中,通过软件工具与方法,一次性自动扫描测试出ssd在不同条件下的io性能。利用io测试软件可自动测试不同条件如:不同数据块大小,对齐方式等下的数据传输率、iops(input/outputpersecond),实现了提高测试效率,及时发现ssd设备的性能瓶颈。

在一个实施例中,如图4所示,提供了一种基于固态硬盘的io性能测试方法,该方法中输出多个不同条件组合下对应的读写测试性能数据的步骤包括:

步骤402,获取多个不同条件组合下对应的读写测试性能数据;

步骤404,根据条件组合以及对应条件组合下的读写测试性能数据生成测试结果列表;

步骤406,输出测试结果列表。

在本实施例中,测试io性能时,循环设置io的不同条件组合,并在每种组合的条件下测试读写性能,在输出结果的时候可以根据条件组合以及对应条件组合下的读写测试性能数据生成测试结果列表,输出测试结果列表。比如,下表是循环变换不同的队列深度与io命令的block大小后测试的读写性能数据(qd:queuedepth)。

注:该表中真实数据已隐藏。

应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图5所示,提供了一种基于固态硬盘的io性能测试装置500,该装置包括:

获取模块501,用于获取基于固态硬盘的io性能测试请求;

设置模块502,用于根据基于固态硬盘的io性能测试请求设置io性能测试的多个不同条件组合;

测试模块503,用于在进行读写性能测试时,根据设置的多个不同条件组合依次进行测试;

输出模块504,用于输出多个不同条件组合下对应的读写测试性能数据。

在一个实施例中,设置模块502还用于:

通过软件工具提供的设置测试条件交互接口设置对应的不同条件组合。

在一个实施例中,设置模块502还用于:

设置多个不同条件组合的起始条件、终止条件以及步长;

设置每次读写测试的测试时长以及测试逻辑范围。

在一个实施例中,输出模块504还用于:

获取所述多个不同条件组合下对应的读写测试性能数据;

根据所述条件组合以及对应条件组合下的读写测试性能数据生成测试结果列表;

输出所述测试结果列表。

关于基于固态硬盘的io性能测试装置的具体限定可以参见上文中对于基于固态硬盘的io性能测试方法的限定,在此不再赘述。

在一个实施例中,提供了一种计算机设备,其内部结构图可以如图6所示。该计算机设备包括通过装置总线连接的处理器、存储器以及网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作装置、计算机程序和数据库。该内存储器为非易失性存储介质中的操作装置和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于固态硬盘的io性能测试方法。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以上各个方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上各个方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1