CN105487952A - 一种基于fio的pcie-ssd自动化测试方法 - Google Patents
一种基于fio的pcie-ssd自动化测试方法 Download PDFInfo
- Publication number
- CN105487952A CN105487952A CN201510928968.5A CN201510928968A CN105487952A CN 105487952 A CN105487952 A CN 105487952A CN 201510928968 A CN201510928968 A CN 201510928968A CN 105487952 A CN105487952 A CN 105487952A
- Authority
- CN
- China
- Prior art keywords
- test
- pcie
- ssd
- fio
- method based
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于FIO的PCIE-SSD自动化测试方法,属于PCIE-SSD自动化测试领域,本发明要解决PCIE-SSD性能及稳定性测试的质量及效率低的问题,采用的技术方案步骤为:(1)根据测试需求修改测试脚本参数;(2)脚本根据参数自动选择对应的测试模块;(3)测试模块根据参数自动开始测试;(4)完成测试并将结果输出到日志。在进行步骤(1)之前对模块变量及参数进行初始定义。
Description
技术领域
本发明涉及PCIE-SSD自动化测试领域,具体地说是一种基于FIO的PCIE-SSD自动化测试方法。
背景技术
随着IT行业的高速发展,信息化、大数据及云计算的发展对服务器性能要求越来越高。PCIE-SSD作为数据存储的载体,性能指标直接影响服务器的整体呈现。做为国内领先的服务器硬件供应商,浪潮也在不断提高对PCIE-SSD性能测试的质量及效率。
Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高。
FIO是一个文件***的benchmark工具,可以测试各种操作***文件***的读写性能。可以进行不同测试块大小、不同模式下的PCIE-SSD性能测试。但是FIO只提供了简单的参数,单条命令的使用有非常大的测试局限,很难做到对PCIE-SSD进行较为***的性能及稳定性测试。
如何能够通过shell语言编写自动化的测试脚本,并手动进行测试参数的调整使本发明要解决的技术问题。将会极大提高PCIE-SSD性能及稳定性测试的质量及效率。
发明内容
本发明的技术任务是针对以上不足,提供一种基于FIO的PCIE-SSD自动化测试方法,来解决PCIE-SSD性能及稳定性测试的质量及效率低的问题。
本发明的技术任务是按以下方式实现的:
一种基于FIO的PCIE-SSD自动化测试方法,步骤为:
(1)根据测试需求修改测试脚本参数;
(2)脚本根据参数自动选择对应的测试模块;
(3)测试模块根据参数自动开始测试;
(4)完成测试并将结果输出到日志。
在进行步骤(1)之前对模块变量及部分参数进行初始定义。
本发明的一种基于FIO的PCIE-SSD自动化测试方法具有以下优点:适用于不同PCIE-SSD型号及配置,仅需根据测试需求修改参数即可。解决了使用FIO单条命令的测试局限性。丰富了测试手段,提高了测试效率和测试质量,更好的实现了PCIE-SSD自动化测试。
附图说明
下面结合附图对本发明进一步说明。
附图1为一种基于FIO的PCIE-SSD自动化测试方法的流程示意图。
具体实施方式
参照说明书附图和具体实施例对本发明的一种基于FIO的PCIE-SSD自动化测试方法作以下详细地说明。
实施例:
本发明的一种基于FIO的PCIE-SSD自动化测试方法,步骤为:
(1)根据测试需求修改测试脚本参数;
(2)脚本根据参数自动选择对应的测试模块;
(3)测试模块根据参数自动开始测试;
(4)完成测试并将结果输出到日志。
在进行步骤(1)之前对模块变量及部分参数进行初始定义,如默认跑IOengine为libaio模式,其实现代码为:
IS_FRAG=false
IS_STRESS=false
IS_BASE=false
IS_FILESYSTEM=false
IS_IOPS=false
IO_ENGINE=libaio
FILE_SIZE=100%
usage说明,对脚本可用到的参数进行说明,执行iotest.sh–h会屏幕print,其实现代码为:
usage(){
echo"$0[-f][-s][-eio_engine][-h][-b][-ddev_name][-m][-ppartion][-wworkdir][-r][-iiops]"
echo"-ffragment"
echo"-sstresstest"
echo"-eioenginetype,defaulttypeislibaio"
echo"-brawdevicebasetest"
…
…
echo"example:"
echo"rawdevicefragment:nohup&>/dev/nullshiotest.sh-f-d/dev/sda&"
echo"rawdevicebasetest:nohup&>/dev/nullshiotest.sh-b-d/dev/sda&"
…
…
echo"Ifyouhaveanyquestion,contactwithme:miaoywinspur.com"
exit
套用getopts方式,对脚本命令行参数进行定义,例如执行iotest.sh–b会自动将“IS_BASE=true”,其实现代码为:
whilegetopts"hsfbe:d:mp:w:ri:"arg
do
case$argin
h)
usage;;
s)
IS_STRESS=true;;
f)
IS_FRAG=true;;
b)
IS_BASE=true;;
…
…
w)
workdir=${OPTARG};;
r)
IS_IOPS=true;;
i)
define_iops=${OPTARG};;
esac
done
根据if语句的判断,调用base_test测试模块,其实现代码为:
if${IS_FRAG};then
fragment
fi
if${IS_BASE};then
base_test
fi
…
…
if${IS_IOPS};then
fixed_iops_test
fi
利用for循环嵌套,采用不同线程不同读写策略不同数据块大小进行测试并输出结果至log档,其实现代码为:
base_test(){
forRWinwriterandwritereadrandread
do
forBSin4k16k64k512k
do
forTHREADSin128163264256
do
if[$THREADS-le32];then
fio--readwrite=${RW}--bs=${BS}--numjobs=${THREADS}--runtime=300s${PARA_LINE}--filename=${DEV_LIST}--name=${RW}_${BS}_${THREADS}|tee-a${RW}.log
else
iodepth=$(($THREADS/32))
PARA_LINE2="--end_fsync=0--group_reporting--direct=1--ioengine=${IO_ENGINE}--iodepth=$iodepth--time_based--invalidate=1--norandommap--randrepeat=0--exitall--size=${FILE_SIZE}"
fio--readwrite=${RW}--bs=${BS}--numjobs=32--runtime=300s${PARA_LINE2}--filename=${DEV_LIST}--name=${RW}_${BS}_${THREADS}|tee-a${RW}.log
fi
done
done
sleep60s
done
根据设置参数运行带宽测试,其实现代码为:
fio--readwrite=read--bs=512k--direct=1--runtime=300s--end_fsync=0--ioengine=${IO_ENGINE}--time_based--invalidate=1--norandommap--randrepeat=0--group_reporting--numjobs=1--size=${FILE_SIZE}--filename=${DEV_LIST}--name=BW_read|tee-aBW_read.log
sleep60s
…
…
fio--readwrite=write--bs=512k--direct=1--runtime=300s--end_fsync=0--ioengine=${IO_ENGINE}--time_based--invalidate=1--norandommap--randrepeat=0--group_reporting--numjobs=1--size=${FILE_SIZE}--filename=${DEV_LIST}--name=BW_write|tee-aBW_write.log
sleep60s
利用不同数据块大小、不同线程及不同读写策略运行稳定性测试,其实现代码为:
#steady
iostat-xm1>4k_rw_iops&
fio--readwrite=randrw--rwmixread=70--bs=4k--runtime=3000s--numjobs=32${PARA_LINE}--filename=${DEV_LIST}--name=4k_rw_iops|tee-a4k_rw_iops.log
kill`pidofiostat`>/dev/null
sleep30s
…
…
iostat-xm1>16k_w_iops&
fio--readwrite=randwrite--bs=16k--runtime=3000s--numjobs=32${PARA_LINE}--filename=${DEV_LIST}--name=16k_w_iops|tee-a16k_w_iops.log
kill`pidofiostat`>/dev/null
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。除说明书所述的技术特征外,均为本专业技术人员的已知技术。
Claims (2)
1.一种基于FIO的PCIE-SSD自动化测试方法,其特征在于步骤为:
(1)根据测试需求修改测试脚本参数;
(2)脚本根据参数自动选择对应的测试模块;
(3)测试模块根据参数自动开始测试;
(4)完成测试并将结果输出到日志。
2.根据权利要求1所述的一种基于FIO的PCIE-SSD自动化测试方法,其特征在于在进行步骤(1)之前对模块变量及部分参数进行初始定义。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510928968.5A CN105487952A (zh) | 2015-12-15 | 2015-12-15 | 一种基于fio的pcie-ssd自动化测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510928968.5A CN105487952A (zh) | 2015-12-15 | 2015-12-15 | 一种基于fio的pcie-ssd自动化测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105487952A true CN105487952A (zh) | 2016-04-13 |
Family
ID=55674945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510928968.5A Pending CN105487952A (zh) | 2015-12-15 | 2015-12-15 | 一种基于fio的pcie-ssd自动化测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105487952A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107545927A (zh) * | 2017-08-25 | 2018-01-05 | 郑州云海信息技术有限公司 | 一种基于fio实现的SSD性能自动化测试方法 |
CN107799158A (zh) * | 2017-11-23 | 2018-03-13 | 郑州云海信息技术有限公司 | 一种NVMe SSD IO延时自动化测试方法 |
CN108335722A (zh) * | 2018-01-03 | 2018-07-27 | 郑州云海信息技术有限公司 | 一种自动化测试ssd接口速率的方法 |
CN108777158A (zh) * | 2018-06-05 | 2018-11-09 | 深圳忆联信息***有限公司 | 测试固态硬盘Trim性能的方法、装置及计算机设备 |
CN109086176A (zh) * | 2018-07-26 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种基于fio的ssd稳态测试方法、装置、设备及存储介质 |
US20190272116A1 (en) * | 2018-03-02 | 2019-09-05 | Shenzhen Shichuangyi Electronics Co., Ltd | Batch automatic test method for solid state disks and batch automatic test device for solid state disks |
CN110659171A (zh) * | 2019-09-25 | 2020-01-07 | 苏州浪潮智能科技有限公司 | 一种测试方法、电子设备和计算机可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850479A (zh) * | 2015-05-15 | 2015-08-19 | 浪潮电子信息产业股份有限公司 | 一种基于fio的硬盘自动化测试方法 |
-
2015
- 2015-12-15 CN CN201510928968.5A patent/CN105487952A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850479A (zh) * | 2015-05-15 | 2015-08-19 | 浪潮电子信息产业股份有限公司 | 一种基于fio的硬盘自动化测试方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107545927A (zh) * | 2017-08-25 | 2018-01-05 | 郑州云海信息技术有限公司 | 一种基于fio实现的SSD性能自动化测试方法 |
CN107799158A (zh) * | 2017-11-23 | 2018-03-13 | 郑州云海信息技术有限公司 | 一种NVMe SSD IO延时自动化测试方法 |
CN108335722A (zh) * | 2018-01-03 | 2018-07-27 | 郑州云海信息技术有限公司 | 一种自动化测试ssd接口速率的方法 |
US20190272116A1 (en) * | 2018-03-02 | 2019-09-05 | Shenzhen Shichuangyi Electronics Co., Ltd | Batch automatic test method for solid state disks and batch automatic test device for solid state disks |
US10768852B2 (en) * | 2018-03-02 | 2020-09-08 | Shenzhen Shichuangyi Electronics Co., Ltd | Batch automatic test method for solid state disks and batch automatic test device for solid state disks |
CN108777158A (zh) * | 2018-06-05 | 2018-11-09 | 深圳忆联信息***有限公司 | 测试固态硬盘Trim性能的方法、装置及计算机设备 |
CN108777158B (zh) * | 2018-06-05 | 2020-12-01 | 深圳忆联信息***有限公司 | 测试固态硬盘Trim性能的方法、装置及计算机设备 |
CN109086176A (zh) * | 2018-07-26 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种基于fio的ssd稳态测试方法、装置、设备及存储介质 |
CN110659171A (zh) * | 2019-09-25 | 2020-01-07 | 苏州浪潮智能科技有限公司 | 一种测试方法、电子设备和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105487952A (zh) | 一种基于fio的pcie-ssd自动化测试方法 | |
CN104850479A (zh) | 一种基于fio的硬盘自动化测试方法 | |
CN110309071B (zh) | 测试代码的生成方法及模块、测试方法及*** | |
CN106682036A (zh) | 一种数据交换***及其交换方法 | |
CN107168879B (zh) | 集中配置管理***测试报告的生成方法及装置 | |
CN106910532A (zh) | 一种自动化测试ssd性能的方法 | |
WO2013123405A1 (en) | Profiling and sequencing operators executable in an emulated computing system | |
CN104809042A (zh) | 一种基于iozone的硬盘性能测试的方法 | |
CN106899454B (zh) | 一种基于Linux***下自动化测试RoCE性能的方法及*** | |
CN103152391A (zh) | 一种日志输出方法和装置 | |
CN105389236A (zh) | 一种基于fio的hba卡自动化测试方法 | |
CN105591779A (zh) | 网元巡检方法及装置 | |
CN113886162A (zh) | 一种计算设备性能测试方法、计算设备及存储介质 | |
CN105260281A (zh) | 一种基于iozone的PCIE SSD卡性能测试的方法 | |
CN103425580A (zh) | 一种自动快速获取和校验云计算设备配置信息的方法 | |
CN108009086B (zh) | 基于用例分解和功能学习的***自动化测试方法 | |
CN112559525B (zh) | 数据检查***、方法、装置和服务器 | |
CN105843716A (zh) | 一种基于mltt的io功能测试方法 | |
CN105389350B (zh) | 一种分布式文件***元数据信息获取方法 | |
CN106294181A (zh) | 智能卡软件使用寿命测试方法 | |
CN114647588A (zh) | 接口测试方法及装置 | |
CN103605612A (zh) | 一种快速选定自动化测试用例的方法 | |
CN104978250A (zh) | 一种基于iozone的HBA卡性能测试的方法 | |
CN105511999A (zh) | 一种基于iozone的USB接口性能测试的方法 | |
CN105068911A (zh) | 一种针对cpu内核进行网卡性能调优的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160413 |