我有几台GPU的机器.我的想法是将它们附加到不同的docker实例,以便在CUDA(或OpenCL)计算中使用这些实例.
我的目标是使用相当老的Ubuntu和相当老的AMD视频驱动程序(13.04)设置docker镜像.原因很简单:升级到更新版本的驱动程序将破坏我的OpenCL程序(由于有缺陷的AMD Linux驱动程序).
所以问题是如下.是否可以使用旧的Ubuntu,旧内核(例如3.14)和旧的AMD(fglrx)驱动程序在新的Arch Linux安装程序中运行docker镜像,并fglrx在存储库中安装新的内核4.2和更新的AMD()驱动程序?
PS我尝试了这个答案(使用Nvidia卡),不幸的是deviceQuery在docker图像中没有看到任何CUDA设备(因为它发生了一些原始答案的评论员)...
PPS我的设置:
GPU的:
1 x Radeon HD 7970
$ lspci -nn | grep Rad
83:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] [1002:6798]
83:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT HDMI Audio [Radeon HD 7970 Series] [1002:aaa0]
Run Code Online (Sandbox Code Playgroud)2 x GeForce GTX Titan Black
使用 docker,您可以依赖操作系统级别的虚拟化。这意味着您在所有容器中使用相同的内核。如果您希望为每个容器运行不同的内核,您可能必须使用系统级虚拟化,例如 KVM、VirtualBox。如果您的设置支持 Intel 的 VT-d,您可以将 GPU 作为 PCIe 设备传递到容器(在这种情况下更好的术语是虚拟机)。
| 归档时间: |
|
| 查看次数: |
1242 次 |
| 最近记录: |