這一篇 5 月的文,好像有 2018 的 patch,安裝好像沒提到要重新 build。直接用 17.10 的 deb + patch 就可以了。
使用 cuda 9.2 的話,package 好像還沒完成,所有相依的 package 都要自己 build 過一次。(雖然github 上已經有 build 完成的 script)
所以,為求簡單,還是依照 cuda toolkit 9.0 有支援的版本 (16.04, 17.10) 選一個。(16.04 是 LTS, support 到2021)。
然後 nvidia cuda toolkit 網站download link 是 9.2, 9.0 要到 archive 去找。
所以不能 follow nvidia cuda toolkit 的 link download
真的,跟這個 說明的一樣。可以直接在 18.04 上安裝cuda-9.0 和 cudnn 7.05,不會有 gcc 版本過新的問題。
然後 pip install tensorflow 時出現 exception .... MemoryError,有一個 link 說,加上 --no-cache-dir 就可以。
然後 follow 說明.. 開啟 python..try:
>>from tensorflow.python.client import device_lib >>device_lib.list_local_devices() 2018-06-25 10:45:58.955248: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA 2018-06-25 10:45:59.256407: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:898] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2018-06-25 10:45:59.257329: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1356] Found device 0 with properties: name: GeForce GTX 1050 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.62 pciBusID: 0000:01:00.0 totalMemory: 3.95GiB freeMemory: 3.56GiB 2018-06-25 10:45:59.257385: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1435] Adding visible gpu devices: 0 2018-06-25 10:46:04.408233: I tensorflow/core/common_runtime/gpu/gpu_device.cc:923] Device interconnect StreamExecutor with strength 1 edge matrix: 2018-06-25 10:46:04.408308: I tensorflow/core/common_runtime/gpu/gpu_device.cc:929] 0 2018-06-25 10:46:04.408330: I tensorflow/core/common_runtime/gpu/gpu_device.cc:942] 0: N 2018-06-25 10:46:04.425190: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1053] Created TensorFlow device (/device:GPU:0 with 3290 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1) [name: "/device:CPU:0" device_type: "CPU" memory_limit: 268435456 locality { } incarnation: 1869392221051952077 , name: "/device:GPU:0" device_type: "GPU" memory_limit: 3450404864 locality { bus_id: 1 links { } } incarnation: 8818617857580197841 physical_device_desc: "device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1" ]
想要 follow 這一篇, test build cuda sample 得話。會出現 gcc 版本太新問題。
所以,遵照這一篇,裝完m gcc-6, g++6 (好像已經裝好),
然後手動建 gcc-6 link 到 /usr/local/cuda/bin/gcc, g++ 也一樣。
sudo ln -s /usr/bin/gcc-6 /usr/local/cuda/bin/gcc sudo ln -s /usr/bin/g++-6 /usr/local/cuda/bin/g++就可以 make OK 了。
200823 更新:
ubuntu 18.04. CUDA 10.2
libgflags-dev libgoogle-glog-dev liblmdb-dev libboost-all-dev libprotobuf-dev protobuf-compiler libhdf5-dev libleveldb-dev libsnappy-dev libopencv-dev libatlas-base-dev python-numpycmake 3.10 一樣會在link 的時候找不到 cublas.要用 3.14 以上版本。可以自己build一個版本
使用 cuda10.2 之後,系統就只有 cmake 的問題,其他都不用修改了。
上面的 package install 完,改 cmake 3.14 之後..
mkdir build && cd build cmake .. make make install這樣就可以了。
install path 是 caffe/build/install
沒有留言:
張貼留言