编译安装gpgpu-sim

1 配置环境:

安装相应的包

$sudo apt-get install build-essentialxutils-dev bison zlib1g-dev flexlibglu1-mesa-devdoxygengraphviz python-pmwpython-ply python-numpy libpng12-dev python-matplotlib

配置CUDA环境(请参考http://renxifeng.is-programmer.com/posts/33302)

所需资源已上传至我的CSDN资源,敬请下载;

注意:gpgpu-sim能够支持的CUDA的最高版本是4.2,因此自动安装的CUDA-5.5会出现错误。

编译sdk时可能出现的错误及解决方案:

(1)undefined reference to nppGetLibVersion 以及类似的错误:

解决方案请参考 http://blog.naver.com/PostView.nhn?blogId=munhoney&logNo=40159131372&redirect=Dlog&widgetTypeCall=true

(2)undefined reference to ‘gluerrorstring'

解决方案请参考:https://devtalk.nvidia.com/default/topic/514705/cuda-programming-and-performance/undefined-reference-to-gluerrorstring-trouble-installing-cuda/

经过我的尝试,以下方案是可行的:

  1. $sudo apt-get install binutils-gold
现在,应该可以正常编译了。

2下载gpgpu-sim

$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

这个问题其实和安装包时遇到的问题类似,都是由于文件依赖关系指定的错误,参考(http://blog.csdn.net/yuxiaohen/article/details/9709013),则解决方案如下:

修改用到boost库的Makefile文件

1)./AES/Makefile



(4)undefined reference to wsm5_gpu

这是编译最后一个测试用例的时候遇到的错误,估计是cuda文件包含或者函数声明的问题,因为现在不具备这方面的只是,因此这个我也没有解决。

不过我们已经有了若干个测试用例了,可以试试我们的gpgpu-sim能不能正常运行了。

4.运行gpgpusim

请参照README.ISPASS-2009





你可能感兴趣的:(编译安装gpgpu-sim)