全部产品
Search
文档中心

容器服务 Kubernetes 版 ACK:cGPU隔离能力注意事项

更新时间:Dec 02, 2024

cGPU是阿里云自研的GPU显存和算力隔离模块,使用cGPU服务可以隔离GPU资源,在多个容器共用一张GPU卡时容器之间的显存和计算资源使用互不影响。本文介绍cGPU使用中的已知问题及注意事项。

阅读前提示

阅读本文前,您需要了解以下内容:

  • 若您集群中GPU节点已存在标签ack.node.gpu.schedule=cgpuack.node.gpu.schedule=core_memcgpu=true,则表明节点已开启cGPU隔离能力。

  • 您需要参见ack-ai-installer组件发布记录了解ack-ai-installer组件版本与cGPU组件版本的对应关系。

  • 若您想了解更多关于cGPU的信息,请参见NVIDIA官方文档

已知问题及解决方案

使用cGPU出现Linux Kernel Panic

若您安装的cGPU组件为1.5.7版本,可能会导致cGPU内核驱动出现死锁现象,即并发执行的进程互相牵制,从而导致Linux Kernel Panic问题。推荐您安装1.5.10及以上版本的cGPU,或将低版本cGPU逐步升级到1.5.10及以上版本,避免新业务出现内核错误问题。升级方式,请参见升级节点cGPU版本

cGPU Pod中执行nvidia-smi出现报错Failed to initialize NVML

若您安装的cGPU组件为1.5.2及以下版本,且驱动版本在2023年07月之后发布(请参见Linux AMD64 Display Driver Archive查看GPU驱动发布时间),可能存在cGPU版本与GPU驱动版本不兼容的情况。ACK各集群版本支持默认GPU驱动版本请参见ACK支持的NVIDIA驱动版本列表

Pod申请共享GPU调度资源且状态处于Running后,您可以在Pod中执行nvidia-smi命令,确认是否有以下预期输出。

Failed to initialize NVML: GPU access blocked by operating system

您需将AI套件升级至最新版本解决此问题,请参见升级共享GPU调度组件

创建cGPU Pod的容器失败或超时退出

若您安装的cGPU组件为1.0.10之前的版本,且NVIDIA Toolkit为1.11以上版本时,会出现Container创建失败或创建超时报错的问题。

您需将AI套件升级至最新版本解决此问题,请参见升级共享GPU调度组件