快速入门和基本操作#
本主题提供使用 NVIDIA DGX™ B200 系统的基本要求和说明,包括执行初步健康检查和准备运行容器。有关其他产品文档,请参阅 NVIDIA DGX 平台页面。
安装和配置#
在安装 DGX B200 之前,请确保您已将所有相关的站点信息提供给您的安装合作伙伴。
重要提示
您的 DGX B200 系统必须由 NVIDIA 合作伙伴网络人员或 NVIDIA 现场服务工程师安装。如果未按规定执行,您的硬件保修将失效。
注册#
要获得 DGX B200 系统的支持,请按照购买时随附的权利认证电子邮件中的注册说明进行操作。
注册后,您可以访问 NVIDIA 企业支持门户,获得技术支持、软件更新,并设置一个 NGC for DGX 系统帐户。如果您没有收到相关信息,请在企业支持服务处向 NVIDIA 企业支持团队开立案例。
有关联系信息,请参阅客户支持。
获取 NGC 帐户#
NVIDIA NGC 提供对 GPU 优化软件的访问,用于深度学习、机器学习和高性能计算 (HPC)。NGC 帐户授予您访问这些工具的权限,并允许您设置私有注册表来管理您的自定义软件。
如果您是 DGX 系统采购的组织管理员,请与 NVIDIA 企业支持部门合作设置 NGC 企业帐户。有关获取 NGC 企业帐户的更多信息,请参阅NGC 私有注册表用户指南。
开启和关闭 DGX B200#
DGX B200 是一个复杂的系统,集成了大量尖端组件,具有特定的启动和关闭顺序。请遵守以下启动和关闭说明。
启动注意事项#
为了保持 DGX B200 顺利运行,在到达登录提示符后,请预留最多一分钟的空闲时间。这确保了所有组件都能完成初始化。
关闭注意事项#
关闭 DGX B200 时,始终从操作系统、电源按钮的瞬时按下或使用 BMC 的正常关机来启动关机,并等待系统进入断电状态后再执行任何维护。
警告
危险风险 - 在操作系统运行时,移除电源线或使用配电单元 (PDU) 关闭系统可能会损坏 DGX B200 服务器中的敏感组件。
验证功能 - 快速健康检查#
NVIDIA 为客户提供了一个名为 NVIDIA 系统管理 (NVSM) 的诊断和管理工具。可以使用 nvsm
命令来确定系统的健康状况、识别组件问题和警报,或运行压力测试以确保所有组件在负载下都能正常工作。Docker 的使用是充分发挥系统性能的关键,因为 NVIDIA 已经针对 DGX 系统上使用的所有主要框架和工作负载优化了容器。
以下说明展示了如何在 DGX B200 系统上执行健康检查,并验证 Docker 和 NVIDIA 驱动程序的安装。
建立到 DGX B200 系统的 SSH 连接。
运行基本系统检查。
sudo nvsm show health
验证输出摘要显示所有检查均为“健康”且总体系统状态为“健康”。
通过查看已安装的 Docker 版本,验证 Docker 是否已安装。
sudo docker --version
成功后,该命令将返回版本,格式为
Docker version xx.yy.zz
,其中实际版本可能因 DGX OS Server 软件的特定版本而异。验证与 NVIDIA 存储库的连接以及 NVIDIA 驱动程序已安装。
sudo docker run --gpus all --rm nvcr.io/nvidia/cuda:12.1.1-base-ubuntu22.04 nvidia-smi
前面的命令逐层拉取
nvidia/cuda
容器镜像,然后运行nvidia-smi
命令。完成后,输出将显示 NVIDIA 驱动程序版本和每个已安装 GPU 的描述。
有关更多信息,请参阅深度学习框架容器用户指南。
运行预检测试#
运行 DGX 压力测试的说明。
NVIDIA 建议在将系统投入生产环境之前或维修后运行预检压力测试。您可以指定在 GPU、CPU、内存和存储上运行测试,还可以指定测试的持续时间。
要运行测试,请使用 NVSM。
语法
sudo nvsm stress-test [--usage] [--force] [--no-prompt] [<test>...] [DURATION]
如需运行测试的帮助,请执行以下操作。
sudo nvsm stress-test --usage
推荐命令
以下命令在所有受支持的组件(GPU、CPU、内存和存储)上运行测试,大约需要 20 分钟。
sudo nvsm stress-test --force
运行具有 GPU 支持的 NGC 容器#
为了在 DGX B200 系统上运行 NGC 容器时获得最佳性能,可以使用以下为 Docker 容器提供 GPU 支持的方法
原生 GPU 支持(包含在 Docker 20.10.18 及更高版本中)
系统中实现的方法取决于安装的 DGX OS 版本。
DGX OS 版本 |
包含的方法 |
---|---|
7.0 |
|
每种方法都通过使用特定的 Docker 命令来调用,如下所述。
使用原生 GPU 支持#
使用 docker run --gpus
运行启用 GPU 的容器。
使用所有 GPU 的示例
sudo docker run --gpus all ...
使用两个 GPU 的示例
sudo docker run --gpus 2 ...
使用特定 GPU 的示例
sudo docker run --gpus '"device=1,2"' ... sudo docker run --gpus '"device=UUID-ABCDEF,1"' ...
使用用于 Docker 的 NVIDIA 容器运行时#
如果您需要使用 nvidia-docker2,请使用 sudo apt install nvidia-docker2
安装它,然后运行
sudo systemctl restart docker
DGX OS 还包括用于 Docker 的 NVIDIA 容器运行时 (nvidia-docker2),它允许您通过以下方式之一运行 GPU 加速容器
使用
docker run
并指定runtime=nvidia
。docker run --runtime=nvidia ...
使用
nvidia-docker run
。nvidia-docker run ...
nvidia-docker2 软件包提供与之前的 nvidia-docker 软件包的向后兼容性,因此您可以使用此命令运行 GPU 加速容器,并且将使用新的运行时。
使用
docker run
并将nvidia
作为默认运行时。您可以将
nvidia
设置为默认运行时,例如,通过将以下行添加到/ etc/docker/daemon.json
配置文件中作为第一个条目。"default-runtime": "nvidia",
以下是在 JSON 文件中添加行的示例。进行此更改时,请勿删除任何预先存在的内容。
{ "default-runtime": "nvidia", "runtimes": { "nvidia": { "path": "/usr/bin/nvidia-container-runtime", "args": [] } } }
然后,您可以使用
docker run
运行 GPU 加速容器。docker run ...
注意
如果在将 nvidia
设置为默认运行时构建 Docker 镜像,请确保 Dockerfile 执行的构建脚本指定容器将需要的 GPU 架构。否则可能会导致容器仅针对构建它的 GPU 架构进行优化。指定 GPU 架构的说明取决于应用程序,并且超出了本文档的范围。请查阅具体的应用程序构建过程。
有关更多信息,请参阅NVIDIA DGX OS 7 用户指南。
管理 CPU 缓解措施#
DGX OS Server 包含安全更新,以缓解 CPU 投机性侧信道漏洞。这些缓解措施可能会降低深度学习和机器学习工作负载的性能。
如果您的 DGX 系统安装包含其他缓解这些漏洞的措施,例如集群级别的措施,您可以禁用单个 DGX 节点的 CPU 缓解措施,从而提高性能。此功能从 DGX OS Server 4.4.0 版本开始提供。
确定 DGX 系统的 CPU 缓解状态#
如果您不知道是否启用了 CPU 缓解措施,请执行以下操作。
cat /sys/devices/system/cpu/vulnerabilities/*
如果输出由多行以
Mitigation:
为前缀的行组成,则表示 CPU 缓解措施已启用。示例
KVM: Mitigation: Split huge pages
Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
Mitigation: Clear CPU buffers; SMT vulnerable
Mitigation: PTI
Mitigation: Speculative Store Bypass disabled via prctl and seccomp
Mitigation: usercopy/swapgs barriers and __user pointer sanitization
Mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling
Mitigation: Clear CPU buffers; SMT vulnerable
如果输出由多行以
Vulnerable
为前缀的行组成,则表示 CPU 缓解措施已禁用。示例
KVM: Vulnerable
Mitigation: PTE Inversion; VMX: vulnerable
Vulnerable; SMT vulnerable
Vulnerable
Vulnerable
Vulnerable: __user pointer sanitization and usercopy barriers only; no swapgs barriers
Vulnerable, IBPB: disabled, STIBP: disabled
Vulnerable
禁用 CPU 缓解措施#
注意
执行以下说明将禁用 DGX OS Server 软件提供的 CPU 缓解措施。
安装
nv-mitigations-off
软件包。sudo apt install nv-mitigations-off -y
重启系统。
验证 CPU 缓解措施已禁用。
cat /sys/devices/system/cpu/vulnerabilities/*
输出应包含多个
Vulnerable
行。有关示例输出,请参阅确定 DGX 系统的 CPU 缓解状态。
重新启用 CPU 缓解措施#
移除
nv-mitigations-off
软件包。sudo apt purge nv-mitigations-off
重启系统。
验证 CPU 缓解措施已启用。
cat /sys/devices/system/cpu/vulnerabilities/*
输出应包含多个
Mitigations
行。有关示例输出,请参阅确定 DGX 系统的 CPU 缓解状态。