容器服务提供 mGPU(multi-container GPU)方案,实现容器间的 GPU 共享。
说明
mGPU 功能目前处于 公测 阶段。
mGPU 是火山引擎基于内核虚拟化隔离 GPU 并结合自研调度框架提供的容器共享 GPU 方案。在保证性能和故障隔离的前提下,mGPU 支持多个容器共享一张 GPU 显卡,支持算力与显存的灵活调度和严格隔离,降低 GPU 使用成本,为充分利用 GPU 硬件资源进行训练和推理提供有效保障。
mGPU 方案架构图如下所示。
在 mGPU 方案中,GPU 设备和 GPU 驱动构成底层 GPU 设备,再通过 mGPU 的内核驱动模块,实现 GPU 设备显存和算力的严格隔离以及故障隔离。mGPU Container Runtime 提供容器运行时配置接口。容器服务基于 Device Plugin 和 Scheduler Plugin 能力,提供用户配置入口。
mGPU 支持多个容器共享一张 GPU 显卡,适用于显卡算力较强,但是单个业务应用无需使用整张显卡的场景。多应用共享显卡且应用间算力隔离,能够在提高 GPU 利用率、降低成本的同时,保障业务的安全隔离。