1.2 综合性能¶
1.2.1 测试目的¶
分别基于OEE、OEE-RT 以及 OEE-RT + Jailhouse,评估系统在某些场景下的综合性能表现及差异。 例如CPU运算性能等。
1.2.2 CPU运算性能¶
测试工具¶
sysbench
测试方案¶
开启若干线程,使用sysbench工具,在10s内对指定数量的线程进行循环10000素数运算获取CPU的计算性能。
测试指令:
taskset -c 2 sysbench cpu --threads=1 run指令在串口终端下执行。
测试结果¶
进行五轮测试,取五次平均值统计结果如下:
测试工具  | 
测试项  | 
OEE  | 
OEE-RT  | 
OEE-RT+Jailhouse  | 
sysbench cpu  | 
每秒可处理事件数  | 
894.68  | 
1010.634  | 
1009.278  | 
事件最小处理时间(ms)  | 
1.02  | 
0.99  | 
0.99  | 
|
事件平均处理时间(ms)  | 
1.11  | 
0.99  | 
0.99  | 
|
事件最大处理时间(ms)  | 
17.08  | 
1.01  | 
1.006  | 
|
95%事件处理时间(ms)  | 
1.07  | 
0.99  | 
0.99  | 
测试结果分析¶
在每秒处理的事件数量上,OEE-RT比OEE性能提升10%以上。
在事件最大处理时间上,OEE-RT从OEE的17.08ms提升到1.01ms,性能提升非常明显。
OEE-RT在添加Jailhouse虚拟化后,CPU性能几乎不受影响。
测试结论¶
在CPU运算性能方面,OEE-RT的性能全面优于OEE。
OEE-RT在添加Jailhouse后,对OEE-RT的性能几乎没有影响,各项指标性能相当。
1.2.3 IO性能¶
测试工具¶
sysbench
测试方案¶
使用sysbench的fileio工具,创建测试数据(prepare)指定文件读写模式为rndrw(随机读写),在指定时间内完成的读写速率,最后清理数据(cleanup)
测试指令:
# 准备阶段: taskset -c 2 sysbench fileio --threads=1 --file-test-mode=rndrw --file-total-size=64M --file-num=16 --file-block-size=1M prepare # 运行阶段: taskset -c 2 sysbench fileio --threads=1 --file-test-mode=rndrw --file-total-size=64M --file-num=16 --file-block-size=1M run指令均在串口终端下执行。
测试结果¶
进行五轮测试,取五次平均值统计结果如下:
测试工具  | 
测试项  | 
OEE  | 
OEE-RT  | 
OEE-RT+Jailhouse  | 
sysbench fileio  | 
随机读速度(MB/s)  | 
3.90  | 
119.9  | 
119.074  | 
随机写速度(MB/s)  | 
2.59  | 
79.934  | 
79.39  | 
|
最小读写时间(ms)  | 
0.89  | 
0.152  | 
0.138  | 
|
平均读写时间(ms)  | 
113.08  | 
4.416  | 
4.458  | 
|
最大读写时间(ms)  | 
1736.64  | 
63.916  | 
63.644  | 
|
95%的读写时间(ms)  | 
885.28  | 
27.466  | 
27.562  | 
测试结果分析¶
在随机读和随机写的速度上,OEE-RT分别达到了119.9MB/s和79.934MB/s,相比OEE的3.90MB/s和2.59MB/s,有了数量级级别的性能提升。
在读写时间上,OEE-RT相对于OEE来说,也有很大的性能提升。比如在平均读写时间和最大读写时间上,OEE-RT相比OEE来说,也获得了数量级级别的性能提升。
OEE-RT在添加Jailhouse虚拟化后,不管是在读写速度上还是在读写时间上,性能影响几乎可以忽略不计。
测试结论¶
在IO性能测试的各项指标上,OEE-RT相比OEE,性能都获得了大幅提升。
OEE-RT在添加Jailhouse虚拟化后,IO性能几乎没有影响。