正文
SPECCPU2006的学习与使用
摘要
这个周末问题不是很多, 陪孩子写作业时顺便研究了下SPEC2006
虽然比较落后了. 但是总比没有要强一些.
其实集团有资源, 但是联系不到人, 只能自己学习和研究了.
找了很多华为博客上面的知识点. 但是依旧有很多问题
想着先总结这, 希望有时间慢慢完善
学习的网站
https://blog.csdn.net/Luckiers/article/details/125816524
https://blog.csdn.net/wkl_venus/article/details/127688671
还有很多零散的网页. 在使用构成中进行了很多学习与参考.
下载工具
链接:https://pan.baidu.com/s/1R-RCA3ZKSnpbyXgqEl7bSw?pwd=a3h8
提取码:a3h8
修改部分源码
第一个需要修改的:
tools/src/buildtools
需要将第: 311行的进行删除或者是注释
export LD_LIBRARY_PATH DYLD_LIBRARY_PATH
然后新增一行的内容为:
export PERLFLAGS="-A libs=-lm -A libs=-ldl"
第二个需要修改的为:
tools/src/make-3.80/glob/glob.c
209行"#if !defined __alloca && !defined GNU_LIBRARY"和230行"#endif"前添加 “//” 注释掉。
第三个 我这边其实使用的是银河麒麟V10SP3 make 是 4.3的版本, 但是这个百度盘里面的是 3.8的可能还需要在修改一个地方:
tools/src/make-3.80/glob/glob.c
添加一行内容:
#define __alloca alloca
第四个 安装部分软件 比如 yum install libnsl "gcc-c++.aarch64" -y
如果没有安装的话是需要安装的. 部分软件要根据架构来区分
进行安装
在spec2006的目录下面执行
./install.sh
注意根据系统的不一样, 速度可能会很慢
注意如果上面四步 有任何一部分有差异都会编译失败. 需要重点看一下.
环境初始化
在 spec2006的目录下面
首先执行
./shrc 后者是 source shrc 设置环境变量
然后使用
bin/relocate
进行相关命令的使用
一些测试脚本
runspec -c x86.cfg -n 1 -r 1 447.dealII
使用 config 目录下面的 x86.cfg 进行一次(-n) 和一个线程(-r)
执行 447.dealII 算法性能验证
runspec -c x86.cfg -n 3 -r N all
使用 config 目录下面的 x86.cfg 进行三次(-n) 和全部线程(-r)
执行 所有测试性能验证
runspec -c arm64.cfg -n 1 -r 1 all
使用 config 目录下面的 arm64.cfg 进行一次次(-n) 和一个线程(-r)
执行 所有测试性能验证
结论分析
周天利用在家的时间
在阿里的倚天710环境.
鲲鹏920泰山服务器
浪潮海光服务器
以及浪潮飞腾服务器进行了测试验证
鲲鹏服务器暂时没有验证成功
但是发现 飞腾<海光<倚天
按照编译安装的时间. 鲲鹏应该强于海光, 但是弱于阿里的倚天.
一个简单结果
Estimated Estimated
Base Base Base Peak Peak Peak
Benchmarks Ref. Run Time Ratio Ref. Run Time Ratio
-------------- ------ --------- --------- ------ --------- ---------
410.bwaves NR
416.gamess NR
433.milc NR
434.zeusmp NR
435.gromacs NR
436.cactusADM NR
437.leslie3d NR
444.namd NR
447.dealII 11440 371 30.8 *
部分结果
测试脚本:
runspec -c arm64.cfg -n 1 447.dealII
447.dealII-浮点运算
飞腾的结果是: 23.5
海光的结果是: 30.8
倚天的结果是: 75.4
鲲鹏的结果是: