你设置的这些环境变量,本质上是在把默认缓存目录从 /root/.cache 改到指定目录。
逐个解释:
| 环境变量 | 控制内容 | 默认目录(未设置时) | 你现在设置后 |
|---|---|---|---|
HF_HOME |
Hugging Face 模型/Tokenizer 缓存 | /root/.cache/huggingface |
/hyperai/input/input0/hub |
VLLM_CACHE_ROOT |
vLLM 编译缓存 | /root/.cache/vllm |
/local_nvme/vllm_cache |
FLASHINFER_CACHE_DIR |
FlashInfer CUDA kernel 编译缓存 | /root/.cache/flashinfer |
/local_nvme/flashinfer_cache |
TORCHINDUCTOR_CACHE_DIR |
PyTorch Inductor 编译缓存 | /tmp/torchinductor_<user> 或用户 cache 目录(版本有关) |
/local_nvme/torch_cache |
TRITON_CACHE_DIR |
Triton kernel 缓存 | ~/.triton/cache |
/local_nvme/triton_cache |
1. HF_HOME
你设置:
export HF_HOME=/hyperai/input/input0/hub
原来:
/root/.cache/huggingface/
里面通常:
/root/.cache/huggingface/
├── hub/
│ ├── models--xxx
│ └── snapshots/
├── assets/
└── datasets/
设置后:
/hyperai/input/input0/hub/
├── models--unsloth--Qwen3.6-27B-NVFP4/
│ └── snapshots/
│ └── ccdaab7...
│ ├── config.json
│ ├── model.safetensors
│ └── tokenizer.json
你现在这个:
models--unsloth--Qwen3.6-27B-NVFP4
就是 HF cache 格式。
2. VLLM_CACHE_ROOT
你设置:
export VLLM_CACHE_ROOT=/local_nvme/vllm_cache
原来:
/root/.cache/vllm/
例如:
/root/.cache/vllm/
└── torch_compile_cache/
└── cca9c83bef/
└── rank_0_0/
└── backbone/
设置后:
/local_nvme/vllm_cache/
└── torch_compile_cache/
└── cca9c83bef/
└── rank_0_0/
保存:
-
torch.compile graph
-
vLLM 编译产物
3. FLASHINFER_CACHE_DIR
你设置:
export FLASHINFER_CACHE_DIR=/local_nvme/flashinfer_cache
原来:
/root/.cache/flashinfer/
你之前看到:
/root/.cache/flashinfer/0.6.12/120f/
设置后:
/local_nvme/flashinfer_cache/
└── 0.6.12/
└── 120f/
└── cached_ops/
└── fp4_gemm_cutlass_sm120/
这里就是:
你的:
Qwen3.6-27B-NVFP4
启动时编译的:
FP4 GEMM kernel
4. TORCHINDUCTOR_CACHE_DIR
你设置:
export TORCHINDUCTOR_CACHE_DIR=/local_nvme/torch_cache
原来可能:
/tmp/torchinductor_root/
或者:
/root/.cache/torch/
保存:
PyTorch 2.x:
torch.compile
|
v
TorchDynamo
|
v
Inductor
|
v
生成CUDA代码
例如:
/local_nvme/torch_cache/
├── fxgraph/
├── triton/
└── xxx.so
5. TRITON_CACHE_DIR
你设置:
export TRITON_CACHE_DIR=/local_nvme/triton_cache
原来:
/root/.triton/cache
保存:
Triton kernel:
例如:
attention kernel
layernorm kernel
matmul kernel
结构:
/local_nvme/triton_cache/
├── xxx/
│ └── kernel.so
你的最终目录结构大概会变成
推荐:
/local_nvme/
|
├── vllm_cache/
│ └── torch_compile_cache/
|
├── flashinfer_cache/
│ └── 0.6.12/
|
├── torch_cache/
│
└── triton_cache/
/hyperai/input/input0/
|
└── hub/
└── models--unsloth--Qwen3.6-27B-NVFP4/
关系:
模型
|
v
HF_HOME -----------------> safetensors权重
启动vLLM
|
+---- FlashInfer
| |
| v
| FLASHINFER_CACHE_DIR
|
+---- torch.compile
| |
| v
| VLLM_CACHE_ROOT
|
+---- Triton
|
v
TRITON_CACHE_DIR
针对你现在的 RTX PRO 6000 + Qwen3.6-27B-NVFP4,这个设置是合理的:
-
/hyperai/input/input0/hub:可以共享(模型) -
/local_nvme/*cache:每台 GPU 节点独立保存(编译产物)
这样既避免重复下载模型,也避免不同 GPU 节点之间污染 CUDA kernel 缓存。