gem5的安装、编译及运行
1)安装各类库文件:
#sudo apt-get install mercurial scons swig gcc m4python python-dev libgoogle-perftools-dev g++ libprotobuf-dev
有部分库文件安装失败,重新分别安装如下:
#apt-get install mercurial
#apt-get install scons
#apt-get install swig
#apt-get install gcc
#apt-get install m4
#apt-get install python
#apt-get install python-dev
#apt-get install libgoogle-perftools-dev
#apt-get install g
#apt-getinstall libprotobuf-dev
2)还需要安装好编译环境:
#sudo apt-get install build-essential
3) 下载gem5源码:
#hg clone http://repo.gem5.org/gem5
4) 进入到gem5目录下,编译gem5的各个架构(X86/ARM/MIPS/ ALPHA):
#cd gem5/
#scons build/X86/gem5.opt
还可以开多线程加速编译过程:
①编译gem5的X86架构出错,ImportError:No module named six
解决:
#apt-get install python-six
②安装six模块,重新编译
编译再次报错:final link failed:Memory exhausted
内存用光???
到网上搜寻了下帮助,据说有可能是ulimit的设置问题,看了下自己的设置:
将stack size调整了下,第三次重新编译!!!
没用,一样的错误!!!
难道说机器性能这么差嘛。。。
考虑进行的解决方案:
一、换一种架构编译,编译 ALPHA 处理器架构
二、可能是虚拟机内存太小,尝试改为4G重新编译
内存改为4G之后,编译成功!
5) 运行gem5自带的hello测试程序,这里选择 se.py 执行 SE 测试,以及测试负载程序。
#cd gem5/
#build/X86/gem5.opt configs/example/se.py -ctests/test-progs/hello/bin/x86/linux/hello
可以看到最后成功输出 Hello world!到这里就已经成功执行 SE 测试了!