memtester 以及 mlc 简单学习

发布时间 2023-04-19 06:48:32作者: 济南小老虎

memtester 以及 mlc 简单学习


下载

memtester
https://pyropus.ca./software/memtester/

下载好后直接进行 make 和make install 就可以了. 

Intel MLC
Intel® Memory Latency Checker 
下载地址. 
https://www.intel.cn/content/www/cn/zh/download/736633/intel-memory-latency-checker-intel-mlc.html

intel 自己的工具 直接就可以运行. 

memtester

make install 之后可以使用
man ./memtester.8 查看帮助. 

测试方法也比较简单
./memtest 100M 10 
使用100MB内存 测试十次

memtester 没有具体结果.. 仅有是否ok可以作为稳定性和设备是否正常的测试. 

MLC

测试也很简单
./mlc 就可以进行测试.

因为没法测试 ARM的
(我暂时没找到源码进行编译的方法)
所以我近测试了下基本的一些机器信息.

注意官方文档里面有 -k 的参数可以指定使用多少核心.
这样就会有条件进行 虚拟机和物理机的带宽和延迟的验证. 


云海OS虚拟机和物理机的内存延迟验证

虚拟机上面和物理机器均使用这个命令进行测试
mlc -k0-7
对应的结果为
机器类型 numa节点延迟 全部读的带宽 无延迟时插入的Delay 无延迟时插入的带宽
物理机器 79.6-132.3 66945.6 282.45 65450.1
虚拟机 124.3 58728.5 338.05 56796.7
阿里AMD9T34 117.3 51572.8 1648.27 51461.5
Intel 8369HB虚拟机 110.5 48198.5 286.22 40459.3

结果分析与总结

理论上内存应该是read比write快
我这边看物理机器上面的多次测试也是这个结果.
但是诡异的是 虚拟机上面都是写比读快, 不知道是何种原因导致的. 

AMD的mlc 测试数据极度的不好, 怀疑是Intel对自己的CPU进行过定性的优化.

自己的云海OS其实没有进行超售,并且复杂不大.
所以他的测试结果比物理机稍微有下降. 但是并不是特别明显.
最多有15%的差异. 
但是看阿里云虚拟机 CPU 比云海的要强大很多, 但是内存带宽反而要查接近一半. 
所以感觉阿里的机器应该是只是CPU优化内存可能并不是最佳.