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调度程序测试的结果进行汇总;
将上述测试统计结果进行分类统计作图,对于多个样品的测试结果,对各自的统计结果先进行合并汇总,然后分别输出条形图盒折线图。