首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么docker容器可以看到主机上的所有GPU设备?

为什么docker容器可以看到主机上的所有GPU设备?
EN

Stack Overflow用户
提问于 2017-10-31 16:56:50
回答 1查看 560关注 0票数 0

主机操作系统版本: CentOS 7.3

Docker版本:1.12.6

CUDA版本8.0.61

主机上有4个GPU。以下是详细信息:

代码语言:javascript
运行
复制
"Devices": [
                {
                    "PathOnHost": "/dev/nvidiactl",
                    "PathInContainer": "/dev/nvidiactl",
                    "CgroupPermissions": "mrw"
                },
                {
                    "PathOnHost": "/dev/nvidia-uvm",
                    "PathInContainer": "/dev/nvidia-uvm",
                    "CgroupPermissions": "mrw"
                },
                {
                    "PathOnHost": "/dev/nvidia2",
                    "PathInContainer": "/dev/nvidia0",
                    "CgroupPermissions": "mrw"
                },
                {
                    "PathOnHost": "/dev/fuse",
                    "PathInContainer": "/dev/fuse",
                    "CgroupPermissions": "mrw"
                }
            ],

请参阅下面的Nvidia设备列表:

代码语言:javascript
运行
复制
root@de-18--dev-105631-3244950001-48pjz:/sys/fs/cgroup/devices# ls /dev | grep nv
    nvidia-uvm
    nvidia-uvm-tools
    nvidia0
    nvidia1
    nvidia2
    nvidia3
    nvidiactl
root@de-18--dev-105631-3244950001-48pjz:/sys/fs/cgroup/devices# cat devices.list 
    a *:* rwm

容器未在特权模式下运行。当容器中的GPU数量正确时,但稍后我们可以在容器中看到4个GPU。

EN

Stack Overflow用户

发布于 2017-10-31 17:05:38

容器是应用程序层的抽象,它将代码和依赖项打包在一起。多个容器可以在同一台机器上运行,并与其他容器共享操作系统内核,每个容器都作为用户空间中的独立进程运行。而虚拟机(VM)是物理硬件的抽象,将一台服务器转变为多台服务器。这就是为什么您能够看到主机上列出的所有GPU的原因。

使用"docker stats“查找容器的资源使用情况(https://docs.docker.com/engine/reference/commandline/stats/)

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47031366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档