我正在尝试让 CUDA 在 Ubuntu 上运行。我可以安装任何版本,但我从 Ubuntu 12.04 开始,因为我无法使用 11.04 设置网络。
这个问题类似:Ubuntu 12.04 中没有 Cuda?以及链接至https://sn0v.wordpress.com/2012/05/11/installing-cuda-on-ubuntu-12-04/但那篇博文似乎……不完整。作者在下面的评论中提到,他上面的说明不起作用。
以下是我所做的:
0)在配备 Nvidia GT 650M 的 ASUS N56V 上安装 Ubuntu 12.04 64 位
1)根据此处的 Ubuntu 官方文档https://help.ubuntu.com/community/BinaryDriverHowto/Nvidia我应该有“附加驱动程序”可用,但我没有。
2)根据http://www.nvidia.com/content/cuda/cuda-downloads.html 此操作系统版本尚不受支持。
3)如何让 nVidia CUDA 或 OpenCL 在装有 nVidia 独立卡/Intel 集成显卡的笔记本电脑上运行?说 CUDA 可以工作。使用 OpenGL 显示需要 Bumblebee。按照步骤 4) 中的说明安装 Bumblebee
4) 尝试按照此处的说明操作,建议使用 Bumblebee:Ubuntu 是否支持具有 Optimus 技术的 NVIDIA GeForce?
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia
optirun firefox & # HARD REBOOT :(
如果 glxspheres 已经运行一次,它就不会重新启动...
5)返回(3)如何让 nVidia CUDA 或 OpenCL 在装有 nVidia 独立卡/Intel 集成显卡的笔记本电脑上运行?
从以下位置获取 11.04 CUDA 代码(工具包和 SDK,不是驱动程序)http://www.nvidia.com/content/cuda/cuda-downloads.html
wget "http://developer.download.nvidia.com/compute/cuda/4_2/rel/toolkit/cudatoolkit_4.2.9_linux_64_ubuntu11.04.run"
wget "http://developer.download.nvidia.com/compute/cuda/4_2/rel/sdk/gpucomputingsdk_4.2.9_linux.run"
工具包:
sudo sh ./cudatoolkit_4.2.9_linux_64_ubuntu11.04.run
然后在.bashrc中添加以下两行
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
SDK:
sh gpucomputingsdk_4.2.9_linux.run # don't run under sudo
cd ~/NVIDIA_GPU_Computing_SDK/C
LINKFLAGS=-L/usr/lib/nvidia-current make -j
很多链接错误...
6)让我们尝试一下PCL,这就是这一切的原因……
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all
sudo apt-get install libboost-dev libboost-mpi-dev libeigen3-dev libflann-dev libvtk5-dev libqhull-dev openni-dev sphinxbase-utils libsphinxbase-dev libsphinxbase1 cmake cmake-curses-gui libvtk5-qt4-dev libegl1-mesa libegl1-mesa-dev libegl1-mesa-drivers libgl1-mesa-glx libglew1.6-dev libglu1-mesa libglu1-mesa-dev
svn co http://svn.pointclouds.org/pcl/trunk pcl-trunk
cd pcl-trunk; mkdir build; cd build
cmake -DCUDA_ARCH_BIN=30 -DCMAKE_BUILD_TYPE=Release ..
make kinfu_app -j8
错误:CUDA 驱动程序版本不足以满足 CUDA 运行时版本 /home/user/pcl-trunk/gpu/containers/src/initialization.cpp:76 的要求
答案1
我还有一台配备 Nvidia GT 650M 的 Asus N56vz。我使用您尝试的第一种方法顺利运行了它,即安装 ubuntu 12.04、添加 x-swat 存储库、apt-get update,然后安装 bumblebee。之后 Optirun 运行正常。
我还安装了当前的 CUDA 工具包和 sdk,没有使用任何特殊技巧,一切运行正常(包括构建 pcl-trunk)。
我在设置过程中遇到的另一个问题是:Kinect(您可能希望与 pcl 一起使用)不支持当前内核为 Ubuntu 12.04 的 USB 3.0。更新到当前内核为 Ubuntu 12.10 后解决了该问题。