前言
之前进行了coremark跑分测试,体验了该CPU的强悍性能。性能是一个综合体验,存储尤其是DDR的性能非常重要,这一篇就进行RAM的性能和压力测试。
STREAM性能测试
下载代码
git clone git clone https://github.com/qinyunti/STREAM.git
cd STREAM/
编译
aarch64-linux-gnu-gcc -O3 -DSTREAM_ARRAY_SIZE=5000000 stream.c -o stream.5M
导出到windows下
cp stream.5M /mnt/d
然后通过串口rz导入到开发板
添加可执行权限
chmod +x stream.5M
运行
./stream.5M
结果如下
Function Best Rate MB/s Avg time Min time Max time
Copy: 3973.6 0.020225 0.020133 0.020367
Scale: 3859.6 0.021430 0.020728 0.023029
Add: 3059.0 0.039349 0.039228 0.039499
Triad: 2886.5 0.042485 0.041573 0.048286
使用的是LPDDR4,可以看到ram访问带宽达到了对应ddr的性能。
参考https://www.cs.virginia.edu/stream/ref.html
memtester压力测试
参考 https://pyropus.ca./software/memtester/
下载代码
wget https://pyropus.ca./software/memtester/old-versions/memtester-4.6.0.tar.gz
tar -xvf memtester-4.6.0.tar.gz
cd memtester-4.6.0/
编译
aarch64-linux-gnu-gcc -O3 memtester.c tests.c -o memtester
导出到WINDOWS下,下载到开发板
cp memtester /mnt/d
chmod +x memtester
运行
./memtester 128M 1
128M表示测试RAM大小
1表示测试一次
另外也可以-p直接指定物理地址,适合在板子开发阶段裸机代码直接指定物理地址测试。
测试结果如下
总结
以上测试可以看到DDR性能也不错,长时间跑RAM稳定性也没问题。RAM性能和稳定性是很关键的,一般都会针对性进行耐久测试,考虑不同温湿度,电磁环境等,这里就是简单的跑一下作为粗略评估。