本文共 1554 字,大约阅读时间需要 5 分钟。
1 配置环境:
安装相应的包
$sudo apt-get install build-essentialxutils-dev bison zlib1g-dev flexlibglu1-mesa-devdoxygengraphviz python-pmwpython-ply python-numpy libpng12-dev python-matplotlib
配置CUDA环境(请参考)
所需资源已上传至我的CSDN资源,敬请下载;
注意:gpgpu-sim能够支持的CUDA的最高版本是4.2,因此自动安装的CUDA-5.5会出现错误。
编译sdk时可能出现的错误及解决方案:
(1)undefined reference to nppGetLibVersion 以及类似的错误:
解决方案请参考
(2)undefined reference to ‘gluerrorstring'
解决方案请参考:
经过我的尝试,以下方案是可行的:
$gitclone git://dev.ece.ubc.ca/gpgpu-sim
但是,在国内这样下载会出错,错误提示无法连接到服务器,因此需要借助国外的服务器。但是我已经下载下来并且传到我的CSDN资源上了。敬请下载。
注意:在下载完成后,我们假定要使用V3.x,因此请仔细阅读V3.x目录下的 README,并按照要求进行设置。
现在可以Make了。
3 编译gpgpu-sim自带的benchmark ispass2009-benchmarks:
可能遇到的错误:
(1)undefined reference to 'boost::filesystem3::detail::status'
解决方案:
#apt-get install libboost-filesystem-dev
(2)mpicc命令找不到
首先,确保安装了mpicc,如果没有请执行以下命令安装
#apt-get install libopenmpi-dev
#apt-get install openmpi-bin
安装完之后,
#whereis mpicc
#/usr/bin/mpicc ...
因此,需要修改ispass2009-benchmarks文件夹下的OPENMPI_BINDER,这个宏用来指定mpicc以及相关工具的位置
将其修改为
另外,还需要对引用到mpi库的Makefile文件做修改,不过先要找到你的openmpi库安装在哪儿了,我的机器上安装到了/usr/lib/openmpi/lib,且DG/3rdParty/ParMetis-3.1/Makefile.in引用了该库,因此对该Makefile文件做修改:
DG目录下的Makefile文件也做了引用,需要修改如下:
即可。
(3)undefined reference to boost::system::generic_category
这个问题其实和安装包时遇到的问题类似,都是由于文件依赖关系指定的错误,参考(),则解决方案如下:
修改用到boost库的Makefile文件
1)./AES/Makefile
(4)undefined reference to wsm5_gpu
这是编译最后一个测试用例的时候遇到的错误,估计是cuda文件包含或者函数声明的问题,因为现在不具备这方面的只是,因此这个我也没有解决。
不过我们已经有了若干个测试用例了,可以试试我们的gpgpu-sim能不能正常运行了。
4.运行gpgpusim
请参照README.ISPASS-2009
转载地址:http://gfgti.baihongyu.com/