一种基于sysbench的批量测试系统及其测试方法与流程

文档序号:20874863发布日期:2020-05-26 16:21阅读:来源:国知局

技术特征:

1.一种基于sysbench的批量测试系统,其特征在于,包括如下模块:

第一模块为cpu测试模块,所述cpu测试模块包括:

测试事务数、最大素数和线程数三个子模块,所述三个模块之间无依赖关系,相互可以独立运行,也可以任意组合同时运行;

第二模块为io测试模块,所述io测试模块包括:

文件大小、线程数测试两个子模块;所述两个子模块之间无依赖关系,相互可以独立运行,也可以任意组合同时运行;

第三模块为线程测试模块,所述线程测试模块包括:

单个请求的线程数压力、单个线程锁数量、线程数量测试三个子模块;所述三个子模块之间无依赖关系,相互可以独立运行,也可以任意组合同时运行;

第四模块为内存测试模块,所述内存测试模块包括:

内存块大小、数据传输总大小测量两个子模块;所述两个模块之间无依赖关系,相互可以独立运行,也可以任意组合同时运行;

第五模块为mutex调度程序测试模块,所述mutex调度程序测试模块包括:

数组互斥总大小测量、内部互斥锁的空循环数量测量、线程互斥锁数量测量及线程测量四个子模块;所述四个模块之间无依赖关系,相互可以独立运行,也可以任意组合同时运行。

2.如权利要求1所述的一种基于sysbench的批量测试系统的测试方法,其特征在于,包括如下步骤:

cpu测试步骤:

当选择cpu测试模块后,可以进行事务数、最大素数、线程数三大模块的测试。当设置相应参数后,三个模块可以独立运行,也可以同时运行,不存在相互依赖关系;

所述的事务数测试为:默认测试数值为10n{n|0<n≤n,n∈z,ndef=4},依次根据n值的变化进行梯度测试;

所述的最大素数测试为:默认测试数值为10n{n|0<n≤n,n∈z,ndef=6},依次根据n值的变化进行梯度测试;

所述的线程数测试为:默认测试数值为2n{n|0≤n≤n,n∈z,ndef=8},依次根据n值的变化进行梯度测试;

io测试步骤:

当选择io测试模块后,可以进行文件大小、线程数二大模块的测试。当设置相应参数后,两个模块可以独立运行,也可以同时运行,不存在相互依赖关系;

所述的文件大小测试为:默认测试数值为n{n|0<n≤n,n∈z,ndef=8},依次根据n值的变化进行梯度测试;

所述的线程数测试为:默认测试数值为2n{n|0≤n≤n,n∈z,ndef=8},依次根据n值的变化进行梯度测试。

线程测试步骤:

当选择线程测试模块后,可以进行单个请求的线程数压力测试、单个线程锁的数量测试,以及线程数三大模块的测试。当设置相应参数后,三个模块可以独立运行,也可以同时运行,不存在相互依赖关系。

所述的单个请求的线程数压力测试为:默认测试数值为n{n|0<n≤n,n∈z,ndef=6},依次根据n值的变化进行梯度测试;

所述的单个线程锁的数量测试为:默认测试数值为10n{n|0≤n≤n,n∈z,ndef=5},依次根据n值的变化进行梯度测试;

所述的线程数测试为:默认测试数值为2n{n|0≤n≤n,n∈z,ndef=8},依次根据n值的变化进行梯度测试;

内存测试步骤:

当选择内存测试模块后,可以进行内存块大小测试、传输数据大小测试。当设置相应参数后,两个模块可以独立运行,也可以同时运行,不存在相互依赖关系;

所述的内存块大小测试为:默认测试数值为n{n|0≤n≤n,n∈z,ndef=8},依次根据n值的变化进行梯度测试;

所述的传输数据大小测试为:默认测试数值为10n{n|0≤n≤n,n∈z,ndef=4},依次根据n值的变化进行梯度测试;

mutex调度程序测试步骤:

互斥锁主要用于实现内核中的互斥访问功能,或者说系统调度功能。当选择mutex测试模块后,可以进行数组互斥大小测试、内部互斥锁的空循环数量测试、线程数量测试、单线程互斥锁数量测试;

当设置相应参数后,四个模块可以独立运行,也可以同时运行,不存在相互依赖关系;

所述的数组互斥总大小测试为:默认测试数值为1024*n{n|1≤n≤n,n∈z,ndef=10},依次根据n值的变化进行梯度测试;

所述的内部互斥锁的空循环数量测试为:默认测试数值为10n{n|0≤n≤n,n∈z,ndef=6},依次根据n值的变化进行梯度测试;

所述的单线程互斥锁数量测试为:默认测试数值为10n{n|0≤n≤n,n∈z,ndef=5},依次根据n值的变化进行梯度测试;

所述的线程数量测试为:默认测试数值为2n{n|0≤n≤n,n∈z,ndef=8},依次根据n值的变化进行梯度测试;

测试结果汇总步骤:

将同一指标的批量测试结果进行汇总。

3.如权利要求2所述的一种基于sysbench的批量测试系统的测试方法,其特征在于,所述的测试结果汇总具体包括:

根据梯度测试结果,分别提取“cpuspeed”,“generalstatistics”,“latency”,“threadsfairness”对应的测试指标信息对所述cpu测试的结果进行汇总;

根据梯度测试结果,分别提取“fileoperations”,“throughput”,“generalstatistics”,“latency”,“threads”对应的测试指标信息对所述io测试的结果进行汇总;

根据梯度测试结果,分别提取“cpuspeed”,“generalstatistics”,“latency”,“threadsfairness”对应的测试指标信息对所述线程测试的结果进行汇总;

根据梯度测试结果,分别提取“generalstatistics”,“latency”,“threads”对应的测试指标信息对所述内存测试的结果进行汇总;

根据梯度测试结果,分别提取“generalstatistics”,“latency”,“threads”对应的测试指标信息对所述mutex调度程序测试的结果进行汇总;

将上述测试统计结果进行分类统计作图,对于多个样品的测试结果,对各自的统计结果先进行合并汇总,然后分别输出条形图盒折线图。


技术总结
本发明公开了一种基于sysbench的批量测试系统,其特征在于,包括如下模块:第一模块为cpu测试模块;第二模块为IO测试模块;第三模块为线程测试模块;第四模块为内存测试模块;第五模块为mutex调度程序测试模块。本发明还公开了其测试方法。与现有的单一测试相比,本发明的测试结果更加丰富和可视化。

技术研发人员:刘港彪;姜丽荣;孙子奎
受保护的技术使用者:上海派森诺生物科技股份有限公司
技术研发日:2019.12.31
技术公布日:2020.05.26
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1