add shell script
This commit is contained in:
41
finetune/configure_gpu.sh
Normal file
41
finetune/configure_gpu.sh
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# 提取GPU UUID
|
||||||
|
GPU_UUIDS=$(nvidia-smi -a | grep 'GPU UUID' | awk '{print $4}')
|
||||||
|
|
||||||
|
# 生成node-generic-resources JSON片段
|
||||||
|
NODE_RESOURCES=$(echo "$GPU_UUIDS" | awk '{print "\"NVIDIA-GPU=" $1 "\","}' | tr -d '\n')
|
||||||
|
NODE_RESOURCES=${NODE_RESOURCES%,} # 移除最后一个逗号
|
||||||
|
|
||||||
|
# 生成完整的daemon.json内容
|
||||||
|
DAEMON_JSON=$(cat <<EOF
|
||||||
|
{
|
||||||
|
"default-runtime": "nvidia",
|
||||||
|
"runtimes": {
|
||||||
|
"nvidia": {
|
||||||
|
"path": "nvidia-container-runtime",
|
||||||
|
"runtimeArgs": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node-generic-resources": [
|
||||||
|
$NODE_RESOURCES
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
)
|
||||||
|
|
||||||
|
# 备份当前的daemon.json文件
|
||||||
|
if [ -f /etc/docker/daemon.json ]; then
|
||||||
|
sudo cp /etc/docker/daemon.json /etc/docker/daemon.json.bak
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 写入新的daemon.json内容
|
||||||
|
echo "$DAEMON_JSON" | sudo tee /etc/docker/daemon.json > /dev/null
|
||||||
|
|
||||||
|
# 重启Docker服务
|
||||||
|
sudo systemctl restart docker
|
||||||
|
|
||||||
|
# 验证配置
|
||||||
|
docker info | grep -i 'nvidia'
|
||||||
|
|
||||||
|
echo "GPU UUIDs have been configured and Docker has been restarted."
|
||||||
Reference in New Issue
Block a user