任何人都知道任何直接允许CUDA / OpenCL访问或实现CUDA / OpenCL抽象的虚拟化解决方案。
更新:谢谢那些评论的人。虽然经典的“桌面”虚拟化技术很不错,但我怀疑Xen之类的产品会更接近标记。
答案 0 :(得分:10)
您可以使用Xen VGA passthrough对VM内的图形卡进行完全访问和控制。你可以在这里找到更多相关信息:http://vfio.blogspot.com/(寻找VFIO GPU如何系列部分1-5)。
我做了几次,它设置起来不是很容易,但它提供了非常好的结果(几乎是原生的)。这是我制作的一个实验视频,显示了使用Xen的双VGA直通:http://www.youtube.com/watch?v=Gtmwnx-k2qg
我没有测试过OpenCL或CUDA,但我很确定它会起作用。
答案 1 :(得分:10)
NVIDIA今年夏天在GTC上宣布了新的Kepler卡上的GPU虚拟化。
http://www.nvidia.com/object/vgx-boards.html
http://www.gputechconf.com/page/home.html
他们不仅宣布了,他们还是现场展示了
答案 2 :(得分:3)
VirtualBox具有PCI-passthrough,允许您在虚拟机中使用CUDA或OpenCL。
答案 3 :(得分:-3)
免责声明:vGPU是我正在开展的项目之一......
如果您想通过CUDA或OpenCL API访问GPU,建议您查看http://www.zillians.com/vgpu
简单地在GPU上实现SR-IOV不会起作用,不仅因为缺乏对硬件的支持,而且还因为在虚拟机管理程序下使用虚拟化GPU资源的可行性。简单的问题:您可以在机箱中安装多少GPU?并为每个VM实例共享它们,这将大大降低性能并对PCI-E交换机有很大的带宽要求......这有什么意义吗?
这就是为什么Amazon EC2仅提供专用GPU实例,以及我们选择实施VGPU以使GPU成为共享和可扩展计算单元的原因。
答案 4 :(得分:-5)
Parallels Workstation Extreme。