配置 NVIDIA Earth-2 Correction Diffusion NIM (运行时配置)#

请参考本文档,了解如何在运行时配置 NVIDIA Earth-2 Correction Diffusion (CorrDiff) NIM 的详细信息。

GPU 选择#

在具有 1 个或多个相同 GPU 的同构环境中,将 --gpus all 传递给 docker run 是可以接受的。在某些环境中,在特定 GPU 上运行容器是有益的。通过使用以下任一方式在容器内公开特定 GPU:

  • --gpus 标志,例如 --gpus='"device=1"'

  • 环境变量 NVIDIA_VISIBLE_DEVICES,例如 -e NVIDIA_VISIBLE_DEVICES=1

用作输入的设备 ID 是 nvidia-smi -L 的输出。

GPU 0: Tesla H100 (UUID: GPU-b404a1a1-d532-5b5c-20bc-b34e37f3ac46)
GPU 1: NVIDIA GeForce RTX 3080 (UUID: GPU-b404a1a1-d532-5b5c-20bc-b34e37f3ac46)

有关更多说明,请参阅 NVIDIA Container Toolkit 文档。

共享内存标志#

CorrDiff NIM 使用 Triton 的 Python 后端 功能,该功能可以随着可用 CPU 核心数量的增加而扩展。您可能需要增加提供给微服务容器的共享内存

提供 1g 共享内存的示例

docker run ... --shm-size=1g ...

模型配置文件#

CorrDiff NIM 具有以下可以使用的模型配置文件

CorrDiff US GEFS HRRR#

NIM_MODEL_PROFILE: bf8e1ed158c1bf27d2e36fc4936a3d2989948a3f4e4e80e2b0e7a7124661911c

Corrector Diffusion (CorrDiff) US GEFS-HRRR 模型对来自全球集合预报系统 (GEFS) 的 25 公里分辨率预报数据进行降尺度,并预测 3 公里分辨率高分辨率快速刷新 (HRRR) 数据。

环境变量#

CorrDiff NIM 允许一些自定义设置,这些设置在容器启动时被引用。以下变量可用于更改 NIM 的行为。

变量

默认值

描述

NGC_API_KEY

您的 NGC API 密钥,具有对您正在使用的模型配置文件的模型注册表的读取权限。

NIM_MODEL_PROFILE

“bf8e1….1911c”

启动时加载到 NIM 中的模型包。这会从 NGC 下载,前提是您具有正确的权限。

NIM_HTTP_API_PORT

8000

将 NIM 服务发布到容器内指定的端口。请务必调整传递给 docker run-p/--publish 标志的端口以反映这一点。

NIM_DISABLE_MODEL_DOWNLOAD

禁用容器启动时下载模型。

EARTH2NIM_TARGET_BATCHSIZE

8

NIM 最初将请求拆分成的目标样本批次大小。然后,这将在模型实例之间动态批处理。对于 VRAM 较低的 GPU,您可能需要降低此值。首选的批次大小为 4、8、12、16

挂载卷#

可以挂载容器内的以下路径以增强 NIM 的运行时性能

容器路径

必需

描述

示例

/opt/nim/.cache

这是在容器内下载模型的目录。此目录必须可以从容器内部访问。可以通过将选项 -u $(id -u) 添加到 docker run 命令来实现。

-v ~/.cache/nim:/opt/nim/.cache