GPGPU-Sim學習(二)搭建GPGPU-Sim環境(ubuntuServer 10.04 安裝GPGPU-Sim)

最近發現在sim的官網那個已經給出了安裝好gpgpu-sim的虛擬機,也是大家的福音。請戳官網鏈接http://gpgpu-sim.org/,我的寫一篇《GPGPU-Sim學習(二)(補充)gpgpu-sim官網所給虛擬機與自己所搭建虛擬機的使用感受》

本階段的主要任務就是安裝GPGPU-Sim,安裝步驟是從帶我那個學長寫的一篇日誌裏,加上我自己的安裝過程中的一些體會。學長日誌鏈接:http://blog.renren.com/blog/197495812/896874009
  強烈建議各種軟件的版本、包括系統的版本完全按照本博客來(前後安裝了20多次的血淚史。。)

  GPGPU-Sim應該算是一個很很小衆的軟件了,在網上也不太容易找到資料,因此,逐漸的摸索,終於安裝成功了。下面把步驟分享如下:(每一步驟之間最好重啓一下,或者退出重新登陸一下)。

第一步,安裝Linux。

我比較喜歡使用Ubuntu,所以下面的講解都是基於Ubuntu的,版本是Ubuntu 10.04 Server(ubuntu在10年不知發生了什麼,10.04下有四個版本,而10.10只有一個測試版,然後在11.04就換內核了,在這裏建議用ubuntuServer10.04.4,因爲其他版本有可能導致安裝失敗)。安裝過程沒啥太大的講究,這裏就是建議各位使用虛擬機,使用虛擬機的好處就是可以做快照,然後步步爲營,省得一旦出錯就亂了手腳。

在這裏注意的是,ubuntu安裝成功後千萬不要做更改軟件源一類能夠影響版本的舉動!

第二步,安裝CUDA。

我用的Server版本的Ubuntu直接帶有開發工具鏈,如果使用桌面版,還需要把開發工具鏈裝上,此外順便安裝一些CUDA所必須的庫。

$ sudo apt-get install build-essential libxi-dev libxmu-dev libglut3-dev

然後到CUDA網站上下載CUDA4.0,是的,我在強調4.0,GPGPU-Sim目前最高只支持到CUDA4.0。如果在NVIDIA網站上找不到4.0下載,可以直接通過百度搜索。下載Driver和ToolKit就行了,注意Toolkit一定要對應Linux的版本,比如,我現在使用的10.04 Server(64位版)就要下載Ubuntu-10.10-x64的Tool-kit。(文件名:cudatoolkit_4.0.17_linux_64_ubuntu10.10.run,對,你沒看錯,是ubuntu10.10,因爲官網上CUDA4.0對應的ubuntu版本就是10.10,能夠兼容10.04.4)

sudo sh cudatoolkit_4.0.17_linux_64_ubuntu10.10.run

安裝Driver需要在純文本界面下進行,如果是Desktop版的,需要再啓動時進入grub,然後按e修改啓動項,只要在內核後面的參數中加入 text 參數,然後Ctrl + X啓動進入。

由於虛擬機肯定沒有CUDA顯卡,因此在安裝CUDA Driver的時候需要將檢查顯卡這步拿掉。安裝CUDA Driver的意義就是在於其中包含了編譯CUDA程序所必須的 libcuda.so 文件。(文件名:devdriver_4.0_linux_64_270.41.19.run)
sudo sh devdriver_4.0_linux_64_270.41.19.run -k $(uname -r)
安裝Tool kit沒啥特別的,各種默認即可。

別忘了安裝完畢,需要在~/.bashrc文件的末尾添加如下內容:

export CUDA_INSTALL_PATH=/usr/local/cuda
export PATH=$PATH:$CUDA_INSTALL_PATH/bin
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/software/gpgpu-sim/v3.x/lib/4000/release
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_INSTALL_PATH/lib64

其中第3行的內容是後面要用到的。另外,我將gpgpu-sim下載到了~/software目錄中,當然這個可以根據個人喜好隨意存放。

第三步,下載並準備gpgpu-sim

非常討厭的是gpgpu-sim沒有提供http或ftp的下載方式,需要通過git方式獲取。首先安裝git:

$ sudo apt-get install git

然後按照gpgpu-sim官方網站(http://www.gpgpu-sim.org)上的提示,輸入命令,下載gpgpu-sim:

$ git clone git://dev.ece.ubc.ca/gpgpu-sim

注意,教育網使用git可能存在問題,那隻能自己想辦法解決了。下載完成後目錄中多了一個叫gpgpu-sim的子目錄。裏面包含了三個子目錄,其中之一是v3.x,我們主要使用該目錄中的文件,其他兩個目錄可以忽略。

下面安裝gpgpu-sim官方手冊的指示安裝依賴庫:

$ sudo apt-get install xutils-dev bison zlib1g-dev flex libglu1-mesa-dev doxygen graphviz python-pmw python-ply python-numpy libpng12-dev

官網: gpgpu-sim.org

第四步,安裝GCC

是的,你也沒有聽錯,是得安裝GCC。這裏很搞笑,gpgpu-sim的程序在GCC 4.4.x編譯器下會報編譯器內部錯誤!無奈Ubuntu 10.04在apt-get中提供的gcc又只有4.4.x,所以我只能硬着頭皮裝最危險的GCC。gpgpu-sim中提到他們開發時使用的是4.5.1,那麼我也是用4.5.1,一定要求穩(我曾冒進的使用了4.7.2,發現GCC4.7跟CUDA存在兼容問題。。。)。

安裝步驟可以參照這篇博客:http://www.cnblogs.com/LitLeo/p/3534196.html
由於使用了虛擬機,這個過程比較緩慢,往往會持續7個小時之久。

安裝完成後,使用gcc -v命令測試一下版本號。

然後隨便找一個CUDA程序用nvcc編譯一下,結果發現報錯了,這是用nvcc默認只支持GCC 4.4及以下的編譯器,因此需要對/usr/local/cuda/include/host_config.h做一些修改,將第80行修改爲:

#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 5)

然後在此編譯該程序,就不會在出現錯誤了。

第五步:編譯gpgpu-sim

萬事俱備只欠東風了,我們已經做好了所有的準備工作,現在需要編譯gpgpu-sim了。

進入gpgpu-sim/v3.x目錄,使用如下命令編譯:

$ source setup_environment
$ make
$ make docs

整個過程應該在十分鐘左右。然後修改~/.bashrc中,把之前註釋掉的第三行拿掉註釋,把原來第4行註釋掉。

第六步:測試gpgpu-sim

我們使用在第四步末生成的CUDA程序,首先去gpgpu-sim/v3.x/comfig中把GTX480目錄下的所有文件拷到和那個CUDA程序同一個目錄下,然後運行那個CUDA程序(假設編譯後文件名爲cudatestapp)

./cudatestapp

會出現一大堆的信息,不用管他,只要不報錯,我們就成功了。
至此,gpgpu-sim安裝完畢

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章