但在沒有安裝 X Window 的 Linux 下,要安裝 CUDA 的話,安裝的步驟大致相同,但多了一個設定,這裡以 Ubuntu Linux Server 版為例,介紹如何在沒有 X Window 的情況下,安裝 NVIDIA CUDA。
首先照一般的安裝方式先安裝 NVIDIA 官方的驅動程式,以 290.10 版本為例,就是將驅動程式下載下來,直接執行:
sudo sh NVIDIA-Linux-x86_64-290.10.run
然後安裝 CUDA Toolkit 與 GPU Computing SDK:
sudo sh cudatoolkit_4.0.17_linux_64_ubuntu10.10.run
sh gpucomputingsdk_4.0.17_linux.run
以上的安裝方式都跟一般的情況相同,若有問題可以參考 Ubuntu Linux 11.04 安裝 NVIDIA CUDA 4.0 RC2。
接下來就是重點了,在執行 CUDA 程式時,必須載入 CUDA 模組與建立 /dev 下面的硬體資訊,這個動作在啓動 X Window 時會自動處理,但是在沒有 X Window 的情況下,就要自己處理。這些動作可以使用一個 shell script 來處理,請建立一個 script 檔案,其內容如下:
#!/bin/bash
/sbin/modprobe nvidia
if [ "$?" -eq 0 ]; then
# Count the number of NVIDIA controllers found.
N3D=`/usr/bin/lspci | grep -i NVIDIA | grep "3D controller" | wc -l`
NVGA=`/usr/bin/lspci | grep -i NVIDIA | grep "VGA compatible controller" | wc -l`
N=`expr $N3D + $NVGA - 1`
for i in `seq 0 $N`; do
mknod -m 666 /dev/nvidia$i c 195 $i;
done
mknod -m 666 /dev/nvidiactl c 195 255
else
exit 1
fi
將這個檔案儲存在您認為適合的地方,筆者是直接將它儲存在 /usr/local/cuda/init_cuda.sh,跟 CUDA 的 Toolkit 放在一起,以後比較不會找不到。
這個 script 每次重開機就要執行一次,所以放在 /etc/rc.local 中執行比較恰當,因此在 /etc/rc.local 中加入一行:
sh /usr/local/cuda/init_cuda.sh
注意這一行要加在 exit 之前,所以 rc.local 看起來應該像這樣:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# Init CUDA
sh /usr/local/cuda/init_cuda.sh
exit 0
這樣就大功告成,重新開機後,就可以開始使用 CUDA 了。
沒有留言:
張貼留言