麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統(tǒng) > Ubuntu > 正文

折騰記錄——Ubuntu14.04系統(tǒng)安裝NvidiaCUDA7.5并搭建PythonTheano深度學(xué)習(xí)開發(fā)環(huán)境

2024-06-28 14:32:01
字體:
供稿:網(wǎng)友

引言

最近幾天一直嘗試搭建Theano深度學(xué)習(xí)開發(fā)環(huán)境,并安裝英偉達CUDA Toolkit。這期間,有想過在Windows上搭建的,但是從網(wǎng)上了解后,發(fā)現(xiàn)還是在linux環(huán)境下更加合適。在搭建這個開發(fā)環(huán)境的過程中,其實入了不少坑,有點曲折。本不打算寫搭建過程的,因為網(wǎng)上確實有不少不錯的安裝步驟,以及官網(wǎng)也有安裝教程。But,鑒于被坑了好幾天,還是記錄一下,長長記性 :)
期間安裝Ubuntu 14.04超過4次(原因:有些軟件依賴問題無法解決,更換軟件源貌似也不可以。不過今天把軟件源換成主服務(wù)器后,就正常了,但是我的無線網(wǎng)速度比較慢,所以使用主服務(wù)器后,下載速度明顯要慢了不少。)。
嘗試安裝Fedora操作系統(tǒng)1次,因為也想過在這個系統(tǒng)上搭建環(huán)境的,因為Ubuntu 14.04上面的部分依賴總是搞不定。但是因為網(wǎng)卡驅(qū)動的問題,始終無法聯(lián)網(wǎng);無法聯(lián)網(wǎng),自然就沒法安裝編譯器,沒有編譯器,沒法安裝網(wǎng)卡驅(qū)動(因為需要編譯驅(qū)動),最后放棄了這個平臺。
嘗試安裝CentOS操作系統(tǒng)1次,其實根本沒有安裝成功,原因是我的獨立顯卡驅(qū)動問題,導(dǎo)致安裝程序的圖形界面上的所有文字都是模糊的,甚至連“退出安裝”按鈕文字我都識別不出來,最后放棄了。

臺式機主要參數(shù)

  • 內(nèi)存:金士頓8G
  • 處理器:Intel Core i5-4590 CPU @ 3.3GHz x 4
  • 顯卡: 英偉達Geforce GTX 750 (GPU并行運算)
  • 硬盤: 西部數(shù)據(jù) 1TB

安裝Ubuntu 14.04操作系統(tǒng)

  • 制作Ubuntu啟動盤(使用軟碟通寫入到U盤上);
  • 臺式機啟動時,選擇快捷啟動,從U盤啟動Ubuntu live cd系統(tǒng);
  • 安裝Ubuntu 14.04操作系統(tǒng);
  • 安裝完畢后重新啟動系統(tǒng);
  • 啟動系統(tǒng),在進入Grub界面時,按e鍵,進入編輯頁面,在倒數(shù)第二行中,ro quiet splash后面添加nomodeset,這樣進入系統(tǒng)后不會因為獨顯驅(qū)動問題而導(dǎo)致黑屏了;
  • 在進入系統(tǒng)后,編輯文件/boot/grub/grub.cfg文件,搜索ro quiet splash關(guān)鍵詞,同樣追加nomodeset,這樣不用每次啟動系統(tǒng)前重復(fù)上述步驟了。

安裝Theano環(huán)境

需要預(yù)先安裝的工具

這些工具在后面可能會使用到,如編譯器等。

sudo apt-get install -y python-dev python-pip python-nose gcc g++ git gfortran

安裝BLAS, LAPACK, ATLAS

這些軟件包必須在安裝Numpy和Scipy之前安裝

sudo apt-get install -y libopenblas-dev liblapack-dev libatlas-base-dev

安裝NumPy

在官方教程中使用了apt-get方式安裝的,但是貌似我確實在安裝后沒有通過單元測試,有不少錯誤產(chǎn)生。尤其是后面安裝的SciPy更是如此??赡芎臀抑皼]有把需要的工具包安裝齊全有關(guān)系吧。

# 安裝NumPy,這個安裝過程需要等待會,因為需要編譯,所以得花一點時間。# 實際上后面安裝的SciPy和Theano都會花時間編譯的,整個安裝過程還是要挺久的。sudo pip install numpy# 進行測試。python -c 'import numpy; numpy.test()'

必須要保證上面的測試通過,然后再繼續(xù)下一步,確保每一步都是正確的。沒有Errors則通過測試。測試結(jié)果如下。

安裝SciPy

# 安裝方法,耐心等待編譯吧:)sudo pip install scipy# 進行測試python -c 'import scipy; scipy.test()'

必須保證scipy也正常通過測試,這樣才可以繼續(xù)安裝下面的Theano。測試結(jié)果如下圖:

安裝Theano

# 安裝方法,還是要耐心等待編譯安裝的,感覺比較耗時sudo pip install Theano# 開始測試sudo python -c 'import theano; theano.test()'

好吧,我感覺這個步驟中的Theano測試花了好長時間,所以,還是耐心等待吧。最后結(jié)果如下。

安裝CUDA Toolkit

下載CUDA Toolkit

在安裝這個英偉達CUDA Toolkit時,還是遇到了不少問題。以下記錄安裝過程,詳細的說明文檔參見英偉達官方提供的Installation Guide for Linux。需要注意的是,該安裝文件已經(jīng)包含了英偉達較新的顯卡驅(qū)動,所以不用單獨安裝獨顯驅(qū)動的。

下載CUDA Toolkit

  • 進入CUDA Toolkit下載頁面

  • 選擇對應(yīng)的Ubuntu 14.04操作系統(tǒng),并且選擇下載runfile(1.1G)文件,同時記錄對應(yīng)的md5值,用于校驗下載文檔有沒有損壞

  • 下載GPU Development Kit

  • 下載完成后,最后校驗一下下載文件與下載頁面提供的文件MD5值是否相同,確保下載到的安裝包是完好無損的。

安裝一些需要的庫

  • 下面都是一些可能需要用到的庫,否則在安裝CUDA時,可能會提示缺少需要的庫文件。
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev  
  • 值得注意的是,我在我的Ubuntu系統(tǒng)/usr/lib/x86_64-linux-gnu/目錄下找到了名為libGLU.so.1.3.1,所以在嘗試建立鏈接到/usr/lib/目錄下后,安裝Samples時就正常了。
sudo ln -s /usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1 /usr/lib/libGLU.so

安裝CUDA

  1. 首先,將X-Window關(guān)閉,然后進入字符界面(如tty1)。關(guān)閉X-Window方法:sudo service lightdm stop

  2. 接下來,在字符界面中,給下載好的cuda_7.5.18_linux.run以及cuda_352_39_gdk_linux.run添加可執(zhí)行權(quán)限

  3. 安裝Development Kit:sudo ./cuda_352_39_gdk_linux .run

  4. 安裝CUDA:sudo ./cuda_7.5.18_linux.run,安裝過程直接根據(jù)提示進行下去即可

  5. 重新啟動X-Window:sudo service lightdm start

環(huán)境變量設(shè)置

  • 在終端中輸入下面的命令即可:
echo 'export PATH=/usr/local/cuda-7.5/bin:$PATH' >> ~/.bashrcecho 'export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH' >> ~/.bashrcsource ~/.bashrc
  • 接下來重啟系統(tǒng),然后開始驗證安裝的結(jié)果。

驗證

查看NVCC版本

  • nvcc -V,輸出結(jié)果如下:

編譯并運行例子

  • 進入到Samples安裝目錄,然后在該目錄下make,等待十來分鐘。

  • 編譯完成后,可以在Samples里面找到bin/x86_64/linux/release/目錄,并切換到該目錄

  • 運行deviceQuery程序,查看輸出結(jié)果如下(重點關(guān)注最后一行,Pass表示通過測試):

  • 運行bandwidthTest程序,查看輸出結(jié)果如下(同樣最后顯示結(jié)果為PASS):

綜合測試

這是最后一個環(huán)節(jié)了,配置Theano使用GPU并行計算,以驗證環(huán)境搭建是否成功。

  • 首先將下面的測試代碼復(fù)制到文本中,命名為test.py
from theano import function, config, shared, sandboximport theano.tensor as Timport numpyimport time vlen = 10 * 30 * 768  # 10 x #cores x # threads per coreiters = 1000 rng = numpy.random.RandomState(22)x = shared(numpy.asarray(rng.rand(vlen), config.floatX))f = function([], T.exp(x))PRint(f.maker.fgraph.toposort())t0 = time.time()for i in xrange(iters):    r = f()t1 = time.time()print("Looping %d times took %f seconds" % (iters, t1 - t0))print("Result is %s" % (r,))if numpy.any([isinstance(x.op, T.Elemwise) for x in f.maker.fgraph.toposort()]):    print('Used the cpu')else:    print('Used the gpu')
  • 在用戶目錄下新建.theanorc配置文件,設(shè)置采用GPU替代CPU進行運算:
  • 新建配置文件sudo vi ~/.theanorc
  • 添加如下內(nèi)容:

    [global]floatX=float32device=gpu
  • 運行test.py測試文件:
  • 首先是默認的使用gpu進行計算,查看運行結(jié)果
  • 作為對比,使用cpu進行計算,觀察與gpu運算結(jié)果差別,從下面的截圖中可以看出,使用gpu的運算時間明顯短很多

總結(jié)

  • 最終還是在Ubuntu 14.04.1系統(tǒng)上將整個開發(fā)環(huán)境搭建成功了,期間確實走了不少彎路。所以還是要汲取一下教訓(xùn)。
  • 理想情況下,按照很多教程那樣,可以很順利的解決安裝的問題。但是安裝過程中還是遇到不少問題,所以,重要的是學(xué)會解決遇到的問題,還有就是耐心地閱讀文檔。

參考

  1. Easy Installation of an Optimized Theano on Current Ubuntu,這個是我第一次安裝的時候閱讀的教程,不過我沒有成功,在后面的單元測試時,沒有全部通過。
  2. Ubuntu12.04配置NVIDIA cuda5.5經(jīng)驗帖
  3. Theano Tutorial: Using the GPU
  4. Ubuntu 14.04安裝Theano詳細教程
  5. CUDA: Installation Guide for Linux
  6. CUDA: Quick Start
  7. stackoverflow: Missing recommended library: libGLU.so

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 免费视频观看 | 久久亚洲网 | 国产一区在线视频观看 | 日韩高清影视 | 国产精品久久久久久久亚洲按摩 | 国产91对白叫床清晰播放 | 久久精品99国产国产精 | 黄色a级片免费观看 | 精品999www | 久久精品视频在线 | 黄污污网站 | 欧美人禽| 国产一级二级毛片 | www.国产一区.com | 视频一区免费观看 | 日本黄色大片免费观看 | 久久精品99北条麻妃 | 成人aaaaa片毛片按摩 | 91av在线影院 | 日韩中文字幕一区二区三区 | 欧美日韩在线免费观看 | 国产一级做a爰片在线看 | a一级黄色毛片 | 日韩.www| 日日做夜夜操 | 99精品视频在线免费观看 | 99影视电影电视剧在线播放 | 亚洲午夜免费电影 | av在线播放电影 | 国产精品成人一区二区三区吃奶 | 密室逃脱第一季免费观看完整在线 | 中文字幕亚洲一区二区三区 | 久久综合入口 | 91精品一区二区综合在线 | 欧美一区黄色 | 成人aaaa免费全部观看 | 国产99视频精品免视看9 | 九色中文 | 久久毛片免费观看 | 中国成人在线视频 | 日本xxxx色视频在线观看免费, |