一、概述
Stream测试是内存测试中业界公认的内存带宽性能测试基准工具,由Virginia University提供。它通过生成四种不同模式下的内存读写操作,用于测试高性能计算机的内存带宽。现代计算机中普遍使用缓存技术,为了保证测试能正确反映计算机内存的读写性能,测试中使用的数据量应远大于缓存大小。
二、安装与使用
1、下载:https://download.csdn.net/download/qq_37330657/90151952
2、打开终端执行
$sudo apt install gfortran
3、解压缩stream安装文件,进入stream目录
$cd stream
4、进行编译
$gcc -O3 -fopenmp -DSTREAM_ARRAY_SIZE=(参考备注计算方法进行计算) -DNTIMES=30 stream.c -o stream
备注:DSTREAM_ARRAY_SIZE计算公式:
{最高级缓存X MB}×1024×1024×4.1×CPU核数/8,结果取整数
比如最高缓存是16M,cpu是8核,那么DSTREAM_ARRAY_SIZE=16×1024×1024×4.1×8/8=68786585 ,结果取整。
最高缓存可通过 lscpu 或 sudo dmidecode -t cache 查询。
5、以root权限清空系统缓存
#echo 3 > /proc/sys/vm/drop_caches
6、执行命令
#./stream ##输出满线程测试结果,重复执行10次,取平均值
7、自定义设置进程数(可选),如
#export OMP_NUM_THREADS=x ## x为你想设置的线程数,然后运行生成的可执行文件,如
#./stream
三、结果分析
运行Stream测试后,会输出四种测试模式下的内存带宽(以MB/s为单位)和相应的计算速率。通过比较这些结果,可以评估计算机内存在不同操作模式下的性能表现。通过它,用户可以方便地评估计算机内存在不同操作模式下的性能表现,为系统优化和升级提供有力支持。