Docker 2.4.5-gpu下GPU未工作?Milvus单机版部署验证求助
确认Milvus-standalone GPU部署正确性的步骤
1. 验证容器是否正确挂载GPU资源
- 进入Milvus容器:
kubectl exec -it <milvus-standalone-pod-name> -- /bin/bash - 在容器内执行
nvidia-smi,若能正常显示GPU型号、驱动版本等信息,说明GPU已成功挂载到容器;若命令报错,说明GPU资源分配失败,需检查宿主机NVIDIA驱动、Docker NVIDIA Runtime配置,或yaml中GPU资源的定义是否正确。
2. 检查Milvus核心配置是否启用GPU
- 查看Milvus的主配置文件
milvus.yaml,确认以下关键配置项:common.gpu.resource.enabled: trueindexing.gpu.enabled: true
- 注意:Milvus仅在执行GPU加速的索引构建、向量检索操作时才会占用GPU资源,空闲状态下GPU使用率为0是正常现象。
3. 验证GPU是否实际参与计算
- 创建支持GPU加速的向量索引(如IVF_FLAT、IVF_SQ8、IVF_PQ等),创建时需明确指定使用GPU资源;
- 插入足量向量数据并触发索引构建,随后发起批量检索请求;
- 在宿主机上执行
nvidia-smi或nvidia-smi dmon实时监控GPU使用率,若此时使用率上升,说明GPU部署生效;若仍为0,需检查索引创建时是否正确指定了GPU参数。
4. 确认Pod的GPU资源配置是否生效
- 执行
kubectl describe pod <milvus-standalone-pod-name>,查看Resources字段下是否存在nvidia.com/gpu: 1(或对应device_ids的GPU数量)的记录,同时检查Events确认GPU资源分配无异常。
5. 排查宿主机GPU环境
- 宿主机执行
nvidia-smi,确认驱动正常运行、GPU状态无异常; - 执行
docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi,验证Docker的GPU Runtime配置是否正确,若此命令无法显示GPU信息,需先修复宿主机的GPU容器运行环境。
内容的提问来源于stack exchange,提问作者rachel song
相关产品推荐
相关产品推荐

