一种磁盘IO性能的测试方法和装置.pdf

上传人:r7 文档编号:4042659 上传时间:2018-08-12 格式:PDF 页数:10 大小:1.82MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410800189.2

申请日:

2014.12.18

公开号:

CN104503909A

公开日:

2015.04.08

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 11/36申请日:20141218|||公开

IPC分类号:

G06F11/36

主分类号:

G06F11/36

申请人:

浪潮(北京)电子信息产业有限公司

发明人:

翟院华

地址:

100085北京市海淀区上地信息路2号2-1号C栋1层

优先权:

专利代理机构:

北京安信方达知识产权代理有限公司11262

代理人:

王康; 李丹

PDF下载: PDF下载
内容摘要

本发明公开了一种磁盘IO性能的测试方法和装置,该方法包括以下步骤:获取测试参数,根据所述测试参数生成对应的IO请求,并对磁盘执行所述IO请求,获取执行所述IO请求时的系统性能数据;对所述系统性能数据进行分析,得到磁盘IO性能的测试结果。本发明通过给予磁盘读写压力,对磁盘IO进行测试,并通过追踪监控和分析系统性能数据,得到磁盘IO性能的测试结果,能够更为全面、具体、直观地了解磁盘的IO特性,以使磁盘的IO性能得到最大的利用。

权利要求书

权利要求书
1.  一种磁盘IO性能的测试方法,其特征在于,包括以下步骤:
获取测试参数,根据所述测试参数生成对应的IO请求,并对磁盘执行所述IO请求,获取执行所述IO请求时的系统性能数据;
对所述系统性能数据进行分析,得到磁盘IO性能的测试结果。

2.  如权利要求1所述的方法,其特征在于,所述对磁盘执行所述IO请求,具体为:
申请IO请求队列,将所述IO请求放到所述IO请求队列中,提交所述IO请求,并收割完成的IO请求。

3.  如权利要求1所述的方法,其特征在于,所述测试参数包括测试线程数、队列深度和文件大小中的一项或多项。

4.  如权利要求1所述的方法,其特征在于,所述系统性能数据包括系统资源数据和系统IO数据,所述系统资源数据包括CPU占用率、内存占用率和磁盘占用率,所述系统IO数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。

5.  如权利要求4所述的方法,其特征在于,所述对所述系统性能数据进行分析,得到磁盘IO性能的测试结果,具体为:
通过分析所述系统资源数据和所述系统IO数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。

6.  一种磁盘IO性能的测试装置,其特征在于,包括:
生成模块,用于获取测试参数,根据所述测试参数生成对应的IO请求;
执行模块,用于对磁盘执行所述IO请求;
获取模块,用于获取执行所述IO请求时的系统性能数据;
分析模块,用于对所述系统性能数据进行分析,得到磁盘IO性能的测试结果。

7.  如权利要求6所述的装置,其特征在于,
所述执行模块,具体用于申请IO请求队列,将所述IO请求放到所述IO请求队列中,提交所述IO请求,并收割完成的IO请求。

8.  如权利要求6所述的装置,其特征在于,所述测试参数包括测试线程数、队列深度和文件大小中的一项或多项。

9.  如权利要求6所述的装置,其特征在于,所述系统性能数据包括系统资源数据和系统IO数据,所述系统资源数据包括CPU占用率、内存占用率和磁盘占用率,所述系统IO数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。

10.  如权利要求9所述的装置,其特征在于,
所述分析模块,具体用于通过分析所述系统资源数据和所述系统IO数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。

说明书

说明书一种磁盘IO性能的测试方法和装置
技术领域
本发明涉及计算机技术领域,具体涉及一种磁盘IO性能的测试方法和装置。
背景技术
在计算机系统中,磁盘是距离CPU最远的子系统,CPU对磁盘的访问涉及到机械操作,比如,转轴和寻轨等。因此,磁盘通常是计算机系统中最慢的子系统,也是最容易出现性能瓶颈的子系统,磁盘IO性能是用户广泛关注的重要参数。
现有的磁盘IO性能测试中,通常集中给予磁盘读写压力,得到测试结果数据。然而,由于上述测试结果数据不够具体,导致现有的磁盘IO性能测试流于表面,无法全面反映磁盘IO性能。
发明内容
本发明提供了一种磁盘IO性能的测试方法和装置,以解决现有的测试方法无法全面反映磁盘IO性能的缺陷。
本发明提供了一种磁盘IO性能的测试方法,包括以下步骤:
获取测试参数,根据所述测试参数生成对应的IO请求,并对磁盘执行所述IO请求,获取执行所述IO请求时的系统性能数据;
对所述系统性能数据进行分析,得到磁盘IO性能的测试结果。
可选地,所述对磁盘执行所述IO请求,具体为:
申请IO请求队列,将所述IO请求放到所述IO请求队列中,提交所述IO请求,并收割完成的IO请求。
可选地,所述测试参数包括测试线程数、队列深度和文件大小中的一项或多项。
可选地,所述系统性能数据包括系统资源数据和系统IO数据,所述系统资源数据包括CPU占用率、内存占用率和磁盘占用率,所述系统IO数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。
可选地,所述对所述系统性能数据进行分析,得到磁盘IO性能的测试结果,具体为:
通过分析所述系统资源数据和所述系统IO数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。
本发明还提供了一种磁盘IO性能的测试装置,包括:
生成模块,用于获取测试参数,根据所述测试参数生成对应的IO请求;
执行模块,用于对磁盘执行所述IO请求;
获取模块,用于获取执行所述IO请求时的系统性能数据;
分析模块,用于对所述系统性能数据进行分析,得到磁盘IO性能的测试结果。
可选地,所述执行模块,具体用于申请IO请求队列,将所述IO请求放到所述IO请求队列中,提交所述IO请求,并收割完成的IO请求。
可选地,所述测试参数包括测试线程数、队列深度和文件大小中的一项或多项。
可选地,所述系统性能数据包括系统资源数据和系统IO数据,所述系统资源数据包括CPU占用率、内存占用率和磁盘占用率,所述系统IO数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。
可选地,所述分析模块,具体用于通过分析所述系统资源数据和所述系统IO数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深 度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。
本发明通过给予磁盘读写压力,对磁盘IO进行测试,并通过追踪监控和分析系统性能数据,得到磁盘IO性能的测试结果,能够更为全面、具体、直观地了解磁盘的IO特性,以使磁盘的IO性能得到最大的利用。
附图说明
图1为本发明实施例中的一种磁盘IO性能的测试方法流程图;
图2为本发明实施例中的blktrace监控软件的监控结果示意图;
图3为本发明实施例中的blktrace监控软件的参数含义示意图;
图4为本发明实施例中的一种磁盘IO性能的测试装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例提供了一种磁盘IO性能的测试方法,如图1所示,包括以下步骤:
步骤101,获取测试参数,根据测试参数生成对应的IO请求,并对磁盘执行IO请求。
具体地,获取测试参数后,申请IO请求队列,将根据测试参数生成的IO请求放到IO请求队列中,提交IO请求,并收割完成的IO请求。其中, 测试参数包括测试线程数、队列深度和文件大小中的一项或多项。
本实施例中,通过运行fio测试软件及其测试指令,生成并对磁盘执行IO请求。通过调整测试指令中的测试参数,可生成并对磁盘执行IO请求。例如,操作系统为redhat6.5,被测磁盘为adaptec 6805RAID卡,将被测磁盘设置为RAID0,并将被测磁盘除读写缓存外的其他功能关闭,fio测试软件中的测试指令为:fio-filename=/dev/sdb-direct=1-rw=randrw-bs=8k-size 1G-numjobs=8-runtime=30-group_reporting-name=file。
其中,测试参数及其对应的含义如下所示:

步骤102,获取执行IO请求时的系统性能数据。
其中,系统性能数据包括系统资源数据和系统IO数据,系统资源数据包括CPU占用率、内存占用率和磁盘占用率,系统IO数据为I/O请求队列的相关信息,包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。
本实施例中,通过运行nmon监控软件及其监控指令,获取执行IO请求 时的系统资源数据;通过运行blktrace监控软件及其监控指令,获取执行IO请求时的系统IO数据。nmon监控软件和blktrace监控软件的运行时间均早于fio测试软件的运行时间。
例如,nmon监控软件中的监控指令为:
nmon-f-s 1-c 12000
其中,-f表示输出文件,输出文件的默认名称为hostname_date_time.nmon;
-s表示截屏频率,即,保存数据的频率;
-c表示截屏次数;
blktrace监控软件中的debug文件系统设定指令为:
mount-t debugfs debugfs/sys/kernel/debug
监控指令为:blktrace-d/dev/sdb-o-|blkparse-i--o blkparse.out
其中,blktrace-d表示被监控设备;
-o-表示将输出吐出到标准输出;
blkparse-i-表示从标准输入获取信息;
-o表示将解析的内容记录在blkparse.out。
步骤103,对系统性能数据进行分析,得到磁盘IO性能的测试结果。
具体地,通过分析系统资源数据和系统IO数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据该对应关系得到磁盘IO性能的测试结果。其中,磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。
本实施例中,通过运行nmon解析工具,对nmon监控软件生成的.nmon进行解析,得到对应的excel文档,该excel文档中包括CPU的监控状态、硬盘读写的IO和带宽。另外,blktrace监控软件的监控结果,包括磁盘对每次IO请求的处理方法与落盘时的最终处理方法,如图2所示;对应的参数含义,如图3所示。
本发明实施例通过给予磁盘读写压力,对磁盘IO进行测试,并通过追踪监控和分析系统性能数据,得到磁盘IO性能的测试结果,能够更为全面、 具体、直观地了解磁盘的IO特性,以使磁盘的IO性能得到最大的利用。
基于上述磁盘IO性能的测试方法,本发明实施例还提供了一种磁盘IO性能的测试装置,如图4所示,包括:
生成模块410,用于获取测试参数,根据所述测试参数生成对应的IO请求。
其中,测试参数包括测试线程数、队列深度和文件大小中的一项或多项。
执行模块420,用于对磁盘执行所述IO请求;
具体地,执行模块420,具体用于申请IO请求队列,将所述IO请求放到所述IO请求队列中,提交所述IO请求,并收割完成的IO请求。
获取模块430,用于获取执行所述IO请求时的系统性能数据。
其中,系统性能数据包括系统资源数据和系统IO数据,系统资源数据包括CPU占用率、内存占用率和磁盘占用率,系统IO数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。
分析模块440,用于对所述系统性能数据进行分析,得到磁盘IO性能的测试结果。
具体地,分析模块440,具体用于通过分析所述系统资源数据和所述系统IO数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。
本发明实施例通过给予磁盘读写压力,对磁盘IO进行测试,并通过追踪监控和分析系统性能数据,得到磁盘IO性能的测试结果,能够更为全面、具体、直观地了解磁盘的IO特性,以使磁盘的IO性能得到最大的利用。
结合本文中所公开的实施例描述的方法中的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意 其它形式的存储介质中。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

一种磁盘IO性能的测试方法和装置.pdf_第1页
第1页 / 共10页
一种磁盘IO性能的测试方法和装置.pdf_第2页
第2页 / 共10页
一种磁盘IO性能的测试方法和装置.pdf_第3页
第3页 / 共10页
点击查看更多>>
资源描述

《一种磁盘IO性能的测试方法和装置.pdf》由会员分享,可在线阅读,更多相关《一种磁盘IO性能的测试方法和装置.pdf(10页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 (43)申请公布日 (21)申请号 201410800189.2(22)申请日 2014.12.18G06F 11/36(2006.01)(71)申请人 浪潮(北京)电子信息产业有限公司地址 100085 北京市海淀区上地信息路 2 号2-1号C栋1层(72)发明人 翟院华(74)专利代理机构 北京安信方达知识产权代理有限公司 11262代理人 王康 李丹(54) 发明名称一种磁盘 IO 性能的测试方法和装置(57) 摘要本发明公开了一种磁盘 IO 性能的测试方法和装置,该方法包括以下步骤 :获取测试参数,根据所述测试参数生成对应的 IO 请求,并对磁盘执行所述IO请求,获。

2、取执行所述IO请求时的系统性能数据;对所述系统性能数据进行分析,得到磁盘IO性能的测试结果。本发明通过给予磁盘读写压力,对磁盘 IO 进行测试,并通过追踪监控和分析系统性能数据,得到磁盘 IO 性能的测试结果,能够更为全面、具体、直观地了解磁盘的 IO 特性,以使磁盘的 IO 性能得到最大的利用。(51)Int.Cl.(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书1页 说明书5页 附图3页(10)申请公布号 CN 104503909 A(43)申请公布日 2015.04.08CN 104503909 A1/1 页21.一种磁盘 IO 性能的测试方法,其特征在于,包括以下步骤。

3、 :获取测试参数,根据所述测试参数生成对应的 IO 请求,并对磁盘执行所述 IO 请求,获取执行所述 IO 请求时的系统性能数据 ;对所述系统性能数据进行分析,得到磁盘 IO 性能的测试结果。2.如权利要求 1 所述的方法,其特征在于,所述对磁盘执行所述 IO 请求,具体为 :申请 IO 请求队列,将所述 IO 请求放到所述 IO 请求队列中,提交所述 IO 请求,并收割完成的 IO 请求。3.如权利要求 1 所述的方法,其特征在于,所述测试参数包括测试线程数、队列深度和文件大小中的一项或多项。4.如权利要求 1 所述的方法,其特征在于,所述系统性能数据包括系统资源数据和系统 IO 数据,所述。

4、系统资源数据包括 CPU 占用率、内存占用率和磁盘占用率,所述系统 IO 数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。5.如权利要求 4 所述的方法,其特征在于,所述对所述系统性能数据进行分析,得到磁盘 IO 性能的测试结果,具体为 :通过分析所述系统资源数据和所述系统 IO 数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。6.一种磁盘 IO 性能的测试装置,其特征在于,包括 :生成模块,用于获。

5、取测试参数,根据所述测试参数生成对应的 IO 请求 ;执行模块,用于对磁盘执行所述 IO 请求 ;获取模块,用于获取执行所述 IO 请求时的系统性能数据 ;分析模块,用于对所述系统性能数据进行分析,得到磁盘 IO 性能的测试结果。7.如权利要求 6 所述的装置,其特征在于,所述执行模块,具体用于申请 IO 请求队列,将所述 IO 请求放到所述 IO 请求队列中,提交所述 IO 请求,并收割完成的 IO 请求。8.如权利要求 6 所述的装置,其特征在于,所述测试参数包括测试线程数、队列深度和文件大小中的一项或多项。9.如权利要求 6 所述的装置,其特征在于,所述系统性能数据包括系统资源数据和系统。

6、 IO 数据,所述系统资源数据包括 CPU 占用率、内存占用率和磁盘占用率,所述系统 IO 数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。10.如权利要求 9 所述的装置,其特征在于,所述分析模块,具体用于通过分析所述系统资源数据和所述系统 IO 数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘 IO 性能的测试结果,所述磁盘 IO 性能的测试结果包括磁盘 IO 性能最佳时的测试线程数、队列深度和文件大小。权 利 要 求 书CN 104503909 A1/5 页3一种磁盘 IO 性能的测试方法和装。

7、置技术领域0001 本发明涉及计算机技术领域,具体涉及一种磁盘 IO 性能的测试方法和装置。背景技术0002 在计算机系统中,磁盘是距离 CPU 最远的子系统,CPU 对磁盘的访问涉及到机械操作,比如,转轴和寻轨等。因此,磁盘通常是计算机系统中最慢的子系统,也是最容易出现性能瓶颈的子系统,磁盘 IO 性能是用户广泛关注的重要参数。0003 现有的磁盘 IO 性能测试中,通常集中给予磁盘读写压力,得到测试结果数据。然而,由于上述测试结果数据不够具体,导致现有的磁盘 IO 性能测试流于表面,无法全面反映磁盘 IO 性能。发明内容0004 本发明提供了一种磁盘 IO 性能的测试方法和装置,以解决现有。

8、的测试方法无法全面反映磁盘 IO 性能的缺陷。0005 本发明提供了一种磁盘 IO 性能的测试方法,包括以下步骤 :0006 获取测试参数,根据所述测试参数生成对应的 IO 请求,并对磁盘执行所述 IO 请求,获取执行所述 IO 请求时的系统性能数据 ;0007 对所述系统性能数据进行分析,得到磁盘 IO 性能的测试结果。0008 可选地,所述对磁盘执行所述 IO 请求,具体为 :0009 申请 IO 请求队列,将所述 IO 请求放到所述 IO 请求队列中,提交所述 IO 请求,并收割完成的 IO 请求。0010 可选地,所述测试参数包括测试线程数、队列深度和文件大小中的一项或多项。0011 。

9、可选地,所述系统性能数据包括系统资源数据和系统 IO 数据,所述系统资源数据包括 CPU 占用率、内存占用率和磁盘占用率,所述系统 IO 数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。0012 可选地,所述对所述系统性能数据进行分析,得到磁盘 IO 性能的测试结果,具体为:0013 通过分析所述系统资源数据和所述系统 IO 数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘 IO 性能的测试结果,所述磁盘 IO 性能的测试结果包括磁盘 IO 性能最佳时的测试线程数、队列深度和文件大小。0014 本发。

10、明还提供了一种磁盘 IO 性能的测试装置,包括 :0015 生成模块,用于获取测试参数,根据所述测试参数生成对应的 IO 请求 ;0016 执行模块,用于对磁盘执行所述 IO 请求 ;0017 获取模块,用于获取执行所述 IO 请求时的系统性能数据 ;0018 分析模块,用于对所述系统性能数据进行分析,得到磁盘 IO 性能的测试结果。说 明 书CN 104503909 A2/5 页40019 可选地,所述执行模块,具体用于申请 IO 请求队列,将所述 IO 请求放到所述 IO 请求队列中,提交所述 IO 请求,并收割完成的 IO 请求。0020 可选地,所述测试参数包括测试线程数、队列深度和文。

11、件大小中的一项或多项。0021 可选地,所述系统性能数据包括系统资源数据和系统 IO 数据,所述系统资源数据包括 CPU 占用率、内存占用率和磁盘占用率,所述系统 IO 数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。0022 可选地,所述分析模块,具体用于通过分析所述系统资源数据和所述系统 IO 数据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘 IO 性能最佳时的测试线程数、队列深度和文件大小。0023 本发明通过给予磁盘读写压力,对磁盘 IO。

12、 进行测试,并通过追踪监控和分析系统性能数据,得到磁盘 IO 性能的测试结果,能够更为全面、具体、直观地了解磁盘的 IO 特性,以使磁盘的 IO 性能得到最大的利用。附图说明0024 图 1 为本发明实施例中的一种磁盘 IO 性能的测试方法流程图 ;0025 图 2 为本发明实施例中的 blktrace 监控软件的监控结果示意图 ;0026 图 3 为本发明实施例中的 blktrace 监控软件的参数含义示意图 ;0027 图 4 为本发明实施例中的一种磁盘 IO 性能的测试装置的结构示意图。具体实施方式0028 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,。

13、显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。0029 需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。0030 本发明实施例提供了一种磁盘 IO 性能的测试方法,如图 1 所示,包括以下步骤 :0031 步骤 101,获取测试参数,根据测试参数生成对应的 IO 请求,并对磁盘执行 IO 请求。0032 具体地,。

14、获取测试参数后,申请 IO 请求队列,将根据测试参数生成的 IO 请求放到IO请求队列中,提交IO请求,并收割完成的IO请求。其中,测试参数包括测试线程数、队列深度和文件大小中的一项或多项。0033 本实施例中,通过运行fio测试软件及其测试指令,生成并对磁盘执行IO请求。通过调整测试指令中的测试参数,可生成并对磁盘执行 IO 请求。例如,操作系统为redhat6.5,被测磁盘为 adaptec 6805RAID 卡,将被测磁盘设置为 RAID0,并将被测磁盘除读写缓存外的其他功能关闭,fio测试软件中的测试指令为:fio-filename/dev/sdb-direct 1-rw randrw。

15、-bs 8k-size 1G-numjobs 8-runtime 30-group_说 明 书CN 104503909 A3/5 页5reporting-name file。0034 其中,测试参数及其对应的含义如下所示 :0035 0036 步骤 102,获取执行 IO 请求时的系统性能数据。0037 其中,系统性能数据包括系统资源数据和系统 IO 数据,系统资源数据包括 CPU 占用率、内存占用率和磁盘占用率,系统IO数据为I/O请求队列的相关信息,包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。0038 本实施例中,通过运行nmon监控软件及其监控指令,获取执行。

16、IO请求时的系统资源数据 ;通过运行 blktrace 监控软件及其监控指令,获取执行 IO 请求时的系统 IO 数据。nmon 监控软件和 blktrace 监控软件的运行时间均早于 fio 测试软件的运行时间。0039 例如,nmon 监控软件中的监控指令为 :0040 nmon-f-s 1-c 120000041 其中,-f 表示输出文件,输出文件的默认名称为 hostname_date_time.nmon ;0042 -s 表示截屏频率,即,保存数据的频率 ;0043 -c 表示截屏次数 ;0044 blktrace 监控软件中的 debug 文件系统设定指令为 :0045 mount。

17、-t debugfs debugfs/sys/kernel/debug0046 监控指令为 :blktrace-d/dev/sdb-o-|blkparse-i-o blkparse.out0047 其中,blktrace-d 表示被监控设备 ;0048 -o- 表示将输出吐出到标准输出 ;说 明 书CN 104503909 A4/5 页60049 blkparse-i- 表示从标准输入获取信息 ;0050 -o 表示将解析的内容记录在 blkparse.out。0051 步骤 103,对系统性能数据进行分析,得到磁盘 IO 性能的测试结果。0052 具体地,通过分析系统资源数据和系统 IO 数。

18、据及其对应的测试参数,得到磁盘性能分别与测试线程数、队列深度和文件大小之间的对应关系,并根据该对应关系得到磁盘IO性能的测试结果。其中,磁盘IO性能的测试结果包括磁盘IO性能最佳时的测试线程数、队列深度和文件大小。0053 本实施例中,通过运行 nmon 解析工具,对 nmon 监控软件生成的 .nmon 进行解析,得到对应的 excel 文档,该 excel 文档中包括 CPU 的监控状态、硬盘读写的 IO 和带宽。另外,blktrace 监控软件的监控结果,包括磁盘对每次 IO 请求的处理方法与落盘时的最终处理方法,如图 2 所示 ;对应的参数含义,如图 3 所示。0054 本发明实施例通。

19、过给予磁盘读写压力,对磁盘 IO 进行测试,并通过追踪监控和分析系统性能数据,得到磁盘 IO 性能的测试结果,能够更为全面、具体、直观地了解磁盘的特性,以使磁盘的 IO 性能得到最大的利用。0055 基于上述磁盘 IO 性能的测试方法,本发明实施例还提供了一种磁盘 IO 性能的测试装置,如图 4 所示,包括 :0056 生成模块 410,用于获取测试参数,根据所述测试参数生成对应的 IO 请求。0057 其中,测试参数包括测试线程数、队列深度和文件大小中的一项或多项。0058 执行模块 420,用于对磁盘执行所述 IO 请求 ;0059 具体地,执行模块 420,具体用于申请 IO 请求队列,。

20、将所述 IO 请求放到所述 IO 请求队列中,提交所述 IO 请求,并收割完成的 IO 请求。0060 获取模块 430,用于获取执行所述 IO 请求时的系统性能数据。0061 其中,系统性能数据包括系统资源数据和系统 IO 数据,系统资源数据包括 CPU 占用率、内存占用率和磁盘占用率,系统 IO 数据包括正在进行读写的进程名称、进程号和执行时间,以及读写的物理块号和块大小。0062 分析模块 440,用于对所述系统性能数据进行分析,得到磁盘 IO 性能的测试结果。0063 具体地,分析模块 440,具体用于通过分析所述系统资源数据和所述系统 IO 数据及其对应的测试参数,得到磁盘性能分别与。

21、测试线程数、队列深度和文件大小之间的对应关系,并根据所述对应关系得到磁盘IO性能的测试结果,所述磁盘IO性能的测试结果包括磁盘 IO 性能最佳时的测试线程数、队列深度和文件大小。0064 本发明实施例通过给予磁盘读写压力,对磁盘 IO 进行测试,并通过追踪监控和分析系统性能数据,得到磁盘 IO 性能的测试结果,能够更为全面、具体、直观地了解磁盘的特性,以使磁盘的 IO 性能得到最大的利用。0065 结合本文中所公开的实施例描述的方法中的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程 ROM、电可擦除可编。

22、程 ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。0066 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵说 明 书CN 104503909 A5/5 页7盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。说 明 书CN 104503909 A1/3 页8图1图2说 明 书 附 图CN 104503909 A2/3 页9图3说 明 书 附 图CN 104503909 A3/3 页10图4说 明 书 附 图CN 104503909 A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1