我已经在vagrant配置上执行了pci传递,启用了3D加速。已安装Cuda,并试图运行deviceQuery Cuda示例,但遗憾的是它告诉我它无法接收设备。
./deviceQuery Starting...
CUDA Device Query (Runtime API) version (CUDART static linking)
cudaGetDeviceCount returned 38
-> no CUDA-capable device is detected
Result = FAIL
该卡是GF 740M,驱动程序是nvidia-352,我在Vagrant框中使用Ubuntu 14.04。在流浪汉:
lspci表示:
$ lspci -nn | grep '\[030[02]\]'
00:02.0 VGA compatible controller [0300]: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter [80ee:beef]
01:00.0 3D controller [0302]: NVIDIA Corporation GK107M [GeForce GT 740M] [10de:0fdf] (rev a1)
bumblebeed:
$ bumblebeed
[ 137.087712] [ERROR]No integrated video card found, quitting.
我可能做错了什么?我无法相信让nvidia驱动程序/卡在虚拟化环境中工作是多么困难。
答案 0 :(得分:2)
Vagrant是一个虚拟机管理器,使用Virtualbox作为它的底层VM。您需要PCI passthrough来支持Virtualbox的直接硬件。此外,您还需要以下方面的支持:
既然你说你有一个740M,这是一个移动GPU,我会假设你没有1,2,3,4和6.即使你确实有1,2, 3(例如带有i7-3520m和QM77的T430)wouldn't work.
换句话说,我认为你不可能这样做。根据您的需要,您可以使用支持GPU的Docker切换到Xen,也许这样可行。