centos6.10和centos7.6 系统性能压测数据
一、环境说明
1.硬件
CPU:Intel(R) Xeon(R) E5-2630 v4 @ 2.20GHz 40核
内存:192G(12*16G)DDR4
硬盘:6*1.2T (SAS,10K RPM)
网卡:2个万兆口+2个千兆口
2.系统
centos6.10 (2.6.32-754.el6.x86_64)
centos7.6(3.10.0-957.el7.x86_64)
3.工具
测试维度:CPU/内存
测试工具:sysbench
工具安装:yum -y install sysbench
工具版本:sysbench 1.0.17 (using system LuaJIT 2.0.4)
测试维度:磁盘IO
测试工具:fio
工具安装:
yum -y install libaio-devel
wget http://brick.kernel.dk/snaps/fio-2.2.5.tar.gz
tar -zxvf fio-2.2.5.tar.gz && cd fio-2.2.5 && make && make install
工具版本:fio-2.2.5
二、CPU测试
1.参数设置
素数上限:10000
执行时间:300秒
线程数:1、6、12、18、24、30、36、42、48、54
命令行:sysbench cpu --cpu-max-prime=10000 --time=300 --threads=<线程数> run
取值方式:取值三次求平均值
2.测试结果(表格)
每秒events(events per second,每秒执行的任务个数,单位个数)
线程数 |
1 |
6 |
12 |
18 |
24 |
30 |
36 |
42 |
48 |
54 |
---|---|---|---|---|---|---|---|---|---|---|
Centos6 | 729.66 | 4378.76 | 8764.78 | 13149.69 | 16275.77 | 18663.66 | 20985.52 | 22454.25 | 22561.50 | 22577.84 |
Centos7 | 1028.47 | 5647.14 | 10199.10 | 14376.88 | 17486.47 | 20209.23 | 22884.01 | 24590.22 | 24618.04 | 24632.16 |
同比 | 40.95% | 28.97% | 16.36% | 9.33% | 7.44% | 8.28% | 9.05% | 9.51% | 9.12% | 9.10% |
95%events执行时间(95th percentile,95%任务执行时间在该时间以内,单位毫秒)
线程数 |
1 |
6 |
12 |
18 |
24 |
30 |
36 |
42 |
48 |
54 |
---|---|---|---|---|---|---|---|---|---|---|
Centos6 | 1.37 | 1.37 | 1.37 | 1.37 | 1.76 | 1.76 | 1.77 | 1.79 | 1.79 | 11.87 |
Centos7 | 0.98 | 1.11 | 1.24 | 1.25 | 1.64 | 1.64 | 1.64 | 1.64 | 1.64 | 1.64 |
events标准差(stddev,在相同时间内多个线程分别完成的素数计算次数是否稳定,该参数对于单线程无意义)
线程数 |
1 |
6 |
12 |
18 |
24 |
30 |
36 |
42 |
48 |
54 |
---|---|---|---|---|---|---|---|---|---|---|
Centos6 | 0.00 | 95.18 | 339.58 | 619.03 | 10574.83 | 11831.21 | 8815.77 | 9083.84 | 10102.43 | 9494.58 |
Centos7 | 0.00 | 2615.65 | 1153.52 | 333.85 | 3322.71 | 2521.89 | 1699.17 | 6740.47 | 6532.39 | 8677.65 |
3.测试结果(图形)
4.依据
当素数上限和线程数一致时,每秒events越高越好,95%events执行时间越低越好,events标准差值越低越稳定
相同时间,比较event谁更多
相同event,比较时间谁更少
时间和event都相同,比较stddev(标准差)谁更低
5.结论
在相同硬件配置下,当素数上限和线程数一致时,Centos7.6系统CPU性能较好,性能相较Centos6提升10%左右,Centos7.6系统CPU整体稳定性较好
三、内存测试
1.参数设置
执行时间:300秒
读写方式:随机读、随机写
块大小::1K、4K、16K、2M
内存大小:100G
线程数:1、6、12、18、24、30、36、42、48、54
命令行:
sysbench memory --time=300 --memory-access-mode=rnd --memory-oper=read --memory-block-size=<块大小> --memory-total-size=100G --threads=<线程数> run(随机读)
sysbench memory --time=300 --memory-access-mode=rnd --memory-oper=write --memory-block-size=<块大小> --memory-total-size=100G --threads=<线程数> run(随机写)
取值方式:单次取值
2.测试结果(表格)
每秒内存速率(单位Mb/s)
读写方式 | 块大小 | 线程(行) 系统(列) |
1 | 6 | 12 | 18 | 24 | 30 | 36 | 42 | 48 | 54 |
随机读 |
1K | centos6 | 1103.45 | 6181.99 | 12289.05 | 16774.82 | 17599.34 | 19986.09 | 20206.94 | 22499.43 | 23366.61 | 23507.29 |
centos7 | 1662.83 | 8112.49 | 14765.25 | 20339.16 | 23570.55 | 24974.2 | 27161.38 | 26924.73 | 25789.57 | 26658.9 | ||
同比 | 50.69% | 31.23% | 20.15% | 21.25% | 33.93% | 24.96% | 34.42% | 19.67% | 10.37% | 13.41% | ||
4K | centos6 | 1408.46 | 8221 | 15946.51 | 20527.09 | 23226 | 26044.53 | 26766.43 | 27267.11 | 29300.51 | 28068.15 | |
centos7 | 2017.99 | 10454.03 | 18913.46 | 25759.72 | 29217.02 | 30318.78 | 33100.17 | 32625.75 | 32313.97 | 31726.51 | ||
同比 | 43.28% | 27.16% | 18.61% | 25.49% | 25.79% | 16.41% | 23.66% | 19.65% | 10.28% | 13.03% | ||
16K | centos6 | 1523.66 | 9057.01 | 18075.29 | 24035.44 | 21230.69 | 27343.61 | 28797.23 | 31973.51 | 29356.17 | 32157.53 | |
centos7 | 2146.94 | 11407.62 | 19766.53 | 29013.66 | 29550.62 | 32679.21 | 34221.02 | 35678.7 | 32801.11 | 35427.41 | ||
同比 | 40.91% | 25.95% | 9.36% | 20.71% | 39.19% | 19.51% | 18.83% | 11.59% | 11.73% | 10.17% | ||
2M | centos6 | 1133.24 | 6790.37 | 13482.77 | 13850.87 | 17689.38 | 18592.76 | 19528.58 | 19419.65 | 20406.5 | 20676.94 | |
centos7 | 1439.13 | 8023.97 | 14407.48 | 20659.4 | 20245.05 | 21077.44 | 22270.95 | 21996.62 | 21809.06 | 22575.73 | ||
同比 | 26.99% | 18.17% | 6.86% | 49.16% | 14.45% | 13.36% | 14.04% | 13.27% | 6.87% | 9.18% | ||
随机写 |
1K | centos6 | 1074.46 | 449.69 | 599.74 | 662.65 | 741.4 | 817.06 | 857.04 | 869.41 | 880.23 | 887.53 |
centos7 | 1617.64 | 474.01 | 607.06 | 667.88 | 751.82 | 808.69 | 856.13 | 891.26 | 878.88 | 897.39 | ||
同比 | 50.55% | 5.41% | 1.22% | 0.79% | 1.41% | -1.02% | -0.11% | 2.51% | -0.15% | 1.11% | ||
4K | centos6 | 1326.4 | 547.03 | 911.22 | 1190 | 1417.5 | 1629.52 | 1769.23 | 1770.73 | 1787.88 | 1807.1 | |
centos7 | 1907.62 | 578.82 | 946.45 | 1202.18 | 1416.77 | 1606.2 | 1787.85 | 1857.49 | 1824.01 | 1829.3 | ||
同比 | 43.82% | 5.81% | 3.87% | 1.02% | -0.05% | -1.43% | 1.05% | 4.90% | 2.02% | 1.23% | ||
16K | centos6 | 1441.58 | 594.35 | 1025.67 | 1521.95 | 1892.24 | 2126.01 | 2378.56 | 2431.35 | 2409.89 | 2384.93 | |
centos7 | 2041.24 | 621.48 | 1119.2 | 1502.92 | 1567.26 | 2120.67 | 1724.69 | 2778.8 | 2304.47 | 2411.84 | ||
同比 | 41.60% | 4.56% | 9.12% | -1.25% | -17.17% | -0.25% | -27.49% | 14.29% | -4.37% | 1.13% | ||
2M | centos6 | 384.29 | 595.28 | 1163.49 | 1692.04 | 2127.65 | 2528.39 | 3047.75 | 3299.86 | 3444.88 | 3497.1 | |
centos7 | 467.14 | 676.31 | 1226.3 | 1745.92 | 2321.16 | 2803.32 | 3327.09 | 3491.92 | 3583.7 | 3560.1 | ||
同比 | 21.56% | 13.61% | 5.40% | 3.18% | 9.10% | 10.87% | 9.17% | 5.82% | 4.03% | 1.80% |
95%events执行时间(95th percentile,95%任务执行时间在该时间以内,单位毫秒)
读写方式 | 块大小 | 线程(行) 系统(列) |
1 | 6 | 12 | 18 | 24 | 30 | 36 | 42 | 48 | 54 |
随机读 | 1K | centos6 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
centos7 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||
4K | centos6 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
centos7 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||
16K | centos6 | 0.01 | 0.01 | 0.01 | 0.02 | 0.02 | 0.02 | 0.02 | 0.02 | 0.02 | 0.02 | |
centos7 | 0.01 | 0.01 | 0.01 | 0.01 | 0.02 | 0.02 | 0.02 | 0.02 | 0.02 | 0.02 | ||
2M | centos6 | 1.79 | 1.79 | 1.79 | 3.62 | 3.62 | 3.62 | 3.62 | 3.62 | 13.70 | 13.70 | |
centos7 | 1.47 | 1.55 | 1.67 | 1.70 | 3.36 | 3.36 | 3.36 | 3.36 | 4.10 | 16.41 | ||
随机写 | 1K | centos6 | 0.00 | 0.02 | 0.02 | 0.03 | 0.04 | 0.04 | 0.05 | 0.05 | 0.05 | 0.05 |
centos7 | 0.00 | 0.01 | 0.02 | 0.03 | 0.04 | 0.04 | 0.05 | 0.05 | 0.05 | 0.05 | ||
4K | centos6 | 0.00 | 0.05 | 0.05 | 0.06 | 0.07 | 0.08 | 0.09 | 0.09 | 0.09 | 0.09 | |
centos7 | 0.00 | 0.05 | 0.05 | 0.06 | 0.07 | 0.08 | 0.09 | 0.09 | 0.09 | 0.09 | ||
16K | centos6 | 0.01 | 0.16 | 0.21 | 0.20 | 0.21 | 0.24 | 0.25 | 0.25 | 0.26 | 0.27 | |
centos7 | 0.01 | 0.17 | 0.18 | 0.21 | 0.26 | 0.23 | 0.35 | 0.23 | 0.28 | 0.27 | ||
2M | centos6 | 5.18 | 24.38 | 20.74 | 21.50 | 23.10 | 25.28 | 25.28 | 39.65 | 41.85 | 47.47 | |
centos7 | 4.41 | 17.95 | 20.00 | 20.74 | 22.28 | 23.52 | 22.28 | 31.37 | 46.63 | 47.47 |
3.测试结果(图形)
4.依据
当内存块大小和线程数一致时,内存速率越高越好,95%events执行时间越低越好
5.结论
在相同硬件配置下,当内存块大小和线程数一致时,Centos7.6系统内存读写性能较好
随机读,内存块大小1K,Centos7.6系统内存读速率提升20%~25%
随机读,内存块大小4K,Centos7.6系统内存读速率提升20%~25%
随机读,内存块大小16K,Centos7.6系统内存读速率提升15%~20%
随机读,内存块大小2M,Centos7.6系统内存读速率提升10%~15%
Centos7.6系统和Centos6.10系统内存写速率相差不大
四、IO测试
1.参数设置
ioengine:libaio
iodepth:16
测试时间:1000秒
文件大小:100G
运行方式:线程
缓存方式:无缓存(non-buffered I/O)
读写方式:随机混合读写(各占50%)
块大小:4K、16K、64k
线程数:1、12、24、36、48
命令行:fio -filename=/dev/mapper/vg_root-lv_data -direct=1 -iodepth 16 -thread -rw=randrw -rwmixread=50 -ioengine=libaio -bs=<块大小> -size=100G -numjobs=<线程数> -runtime=1000 -group_reporting -name=randrw_4k
取值方式:单次取值
备注:不要用根分区压测
2.测试结果(表格)
IOPS
块大小 | 读写方式 |
线程(行) |
1 | 12 | 24 | 36 | 48 |
4K |
随机读 | centos6 | 608 | 835 | 844 | 848 | 836 |
centos7 | 678 | 929 | 931 | 930 | 929 | ||
同比 | 11.51% | 11.26% | 10.31% | 9.67% | 11.12% | ||
随机写 | centos6 | 608 | 834 | 844 | 848 | 841 | |
centos7 | 678 | 929 | 930 | 928 | 929 | ||
同比 | 11.51% | 11.39% | 10.19% | 9.43% | 10.46% | ||
16K |
随机读 | centos6 | 627 | 784 | 777 | 778 | 771 |
centos7 | 644 | 884 | 884 | 883 | 878 | ||
同比 | 2.71% | 12.76% | 13.77% | 13.50% | 13.88% | ||
随机写 | centos6 | 627 | 781 | 777 | 777 | 773 | |
centos7 | 643 | 884 | 883 | 882 | 883 | ||
同比 | 2.55% | 13.19% | 13.64% | 13.51% | 14.23% | ||
64k |
随机读 | centos6 | 533 | 650 | 631 | 625 | 642 |
centos7 | 584 | 762 | 760 | 760 | 758 | ||
同比 | 9.57% | 17.23% | 20.44% | 21.60% | 18.07% | ||
随机写 | centos6 | 532 | 647 | 629 | 629 | 641 | |
centos7 | 584 | 759 | 760 | 759 | 760 | ||
同比 | 9.77% | 17.31% | 20.83% | 20.67% | 18.56% |
平均读写延时(usec)
块大小 | 读写方式 | 线程/系统 | 1 | 12 | 24 | 36 | 48 |
4K |
随机读 | centos6 | 52.58 | 5201.40 | 13150.43 | 19975.82 | 27337.97 |
centos7 | 15.70 | 4646.74 | 11521.06 | 18157.09 | 24508.63 | ||
同比 | 234.90% | 11.94% | 14.14% | 10.02% | 11.54% | ||
随机写 | centos6 | 37.87 | 5170.84 | 12944.21 | 20107.70 | 27395.61 | |
centos7 | 15.22 | 4673.29 | 11685.71 | 18076.21 | 24740.19 | ||
同比 | 148.82% | 10.65% | 10.77% | 11.24% | 10.73% | ||
16K |
随机读 | centos6 | 6.67 | 6265.55 | 13811.75 | 21425.86 | 29275.79 |
centos7 | 17.51 | 4949.93 | 12199.87 | 19030.52 | 26004.08 | ||
同比 | -61.91% | 26.58% | 13.21% | 12.59% | 12.58% | ||
随机写 | centos6 | 9.31 | 6238.13 | 14026.43 | 21595.26 | 29731.86 | |
centos7 | 17.24 | 4956.07 | 12306.63 | 19128.34 | 26030.39 | ||
同比 | -46.00% | 25.87% | 13.97% | 12.90% | 14.22% | ||
64k |
随机读 | centos6 | 9.89 | 6856.86 | 16420.17 | 25801.19 | 34253.50 |
centos7 | 22.75 | 5716.80 | 14224.21 | 21850.26 | 30053.78 | ||
同比 | -56.53% | 19.94% | 15.44% | 18.08% | 13.97% | ||
随机写 | centos6 | 20.47 | 6787.45 | 17147.49 | 27091.94 | 36140.55 | |
centos7 | 23.63 | 5747.62 | 14128.75 | 22468.11 | 30199.88 | ||
同比 | -13.37% | 18.09% | 21.37% | 20.58% | 19.67% |
3.测试结果(图形)
4.依据
当磁盘块大小和线程数一致时,IOPS越高越好,平均读写延迟越低越好
5.结论
在相同硬件配置下,当磁盘块大小和线程数一致时,Centos7.6系统IO性能较好
在磁盘块大小4K/16K/64K情况下,Centos7.6系统(xfs)相较于Centos6.10系统(ext4),
IOPS性能提升10%~15%,平均读写延时降低10%~15%
五、参考链接
https://cloud.tencent.com/developer/article/1468113
https://cloud.tencent.com/developer/article/1468116
https://cloud.tencent.com/developer/article/1068403
https://blog.****.net/ma15732625261/article/details/81355269
https://www.cnblogs.com/raykuan/p/6914748.html