Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 我可以在MacBook Pro的docker容器中使用GPU吗?(AMD Radeon GPU)_Macos_Docker_Gpu_Macos Sierra - Fatal编程技术网

Macos 我可以在MacBook Pro的docker容器中使用GPU吗?(AMD Radeon GPU)

Macos 我可以在MacBook Pro的docker容器中使用GPU吗?(AMD Radeon GPU),macos,docker,gpu,macos-sierra,Macos,Docker,Gpu,Macos Sierra,我想在我的MacBookPro上的docker容器中运行一个支持GPU的应用程序(Gazebo) 在我看来,通过我的研究,大约一年前,Docker为MacOS发布了一个本地Docker应用程序 在此之前,Docker通常生成一个完整的Linux虚拟机,并在其上运行容器 现在,它显然使用了一些本机hypervisor框架,使其更优化,更接近硬件,完全改变了Docker在Mac上实现容器化的方法 所有这些对我来说都不是很清楚,我也不确定我所说的一切 现在是否可以从docker容器中使用我的macbo

我想在我的MacBookPro上的docker容器中运行一个支持GPU的应用程序(Gazebo)

在我看来,通过我的研究,大约一年前,Docker为MacOS发布了一个本地Docker应用程序

在此之前,Docker通常生成一个完整的Linux虚拟机,并在其上运行容器

现在,它显然使用了一些本机hypervisor框架,使其更优化,更接近硬件,完全改变了Docker在Mac上实现容器化的方法

所有这些对我来说都不是很清楚,我也不确定我所说的一切

现在是否可以从docker容器中使用我的macbook pro的GPU,如果可以,如何使用?

我现在使用的命令行适用于常规X11应用程序,但不适用于Gazebo等支持GPU的应用程序:

xhost +
docker run -it -e DISPLAY=$ip:0 -v /tmp/.X11-unix:/tmp/.X11-unix image_name bash
还有一台虚拟机。 Docker for Mac使用一个名为。它比VirtualBox等(模拟的外围设备更少)更薄、更轻,但它仍然是虚拟化的


PCI通过(理论上)是可能的,但你不能通过你的笔记本电脑的主GPU仍然使用它。 带有IOMMU的硬件(是的,您的MacBook Pro有一个具有这种支持的Intel芯片组)可以允许虚拟化环境直接访问PCI硬件

但是,您不能将硬件的控制权让给VM,而仍然从主机使用该硬件。(一些高端服务器网卡通过具有多个PCI端点来解决这一问题,因此主机和每个客户机都有一个不同的端点进行通信)


所以--你可以得到一个外部Thunderbolt连接的GPU,它可能会工作。。。未来
现在还没有(截至2017年年中的文章),即使在KVM(这里有很多从事开创性工作的人使用)上,也只有有限的成功报告(使用特定的视频卡——Radeon HD 5850)。

如果您无法将硬件的控制权让给VM,并且仍然从主机使用它,为什么我的VMware VM可以与我的主机同时使用GPU?@deb0ch,如果您的客户机和主机可以同时使用GPU,那么主机显然没有放弃完全控制权(这涉及将内存和中断直接映射到客户机,甚至连自己都看不到)。您仍然可以提供一个虚拟化驱动程序,它提供部分访问并充当中介;这会对性能造成影响,但如果你想共享访问权限,那你就可以了。那么,有没有可能(如果Docker或Apple将来实现的话)向容器提供类似的GPU部分访问权限?顺便说一句,非常感谢您的有益见解:)是的,如果人们在未来建立支持,这是可能的。不仅仅是VMware已经支持共享访问——还有OSS原生Linux支持,形式为,但我还没有听说有人为MacOS/xhyve.BTW构建类似的东西,在2021年初谈到现状时——nVidia明确支持PCI直通,其卡面向商业市场(f/e,Quadro系列); 而对于消费者卡,如果他们检测到虚拟化环境,他们的驱动程序会拒绝安装。AMD卡仍然可以通过,尽管在重新启动VM时重置它们(能够重新启动VM,但不能重新启动主机)并没有得到很好的支持(需要第三方软件),但在大型Navi设备中除外,这些设备目前非常罕见且很难找到。顺便说一句,Xhyve不支持这些。你有没有想过在容器deb0ch中运行Gazebo?没有,从来没有:/2020更新:你可能想看看哪里有对OSX的实验性支持。没有GPU,显示速度非常慢,但从技术上讲,Gazebo是在MacOS上的一个容器中运行的。Turtlebot3的示例图像可从以下网址获得。