How do I speed up model downloads on a cloud GPU?

Short answer: On a CloudGPU instance, run cloudgpu-net on in the shell you download from; it turns on download acceleration for Hugging Face, GitHub and similar sites for that shell (run cloudgpu-net off before pip installs, which can be slower while it is on). Then download only the files you need (hf download --dry-run, --include), set HF_XET_HIGH_PERFORMANCE=1, and run separate downloads in parallel. Skip hf_transfer: the Hugging Face docs mark HF_HUB_ENABLE_HF_TRANSFER as deprecated because all transfers now go through hf-xet (environment variables, read 2026-11-03).

Download time on a running instance is billed time (per minute, rounded up, 1-minute minimum), so a shorter download is a smaller bill.

Step 1: Turn on download acceleration with cloudgpu-net

Every CloudGPU instance has the cloudgpu-net command:

cloudgpu-net status   # is acceleration on in this shell?
cloudgpu-net on       # turn it on for the current shell
# ... run your hf download / git clone / wget commands here ...
cloudgpu-net off      # turn it off again, e.g. before pip install

What to know:

  • It applies to the current shell only. A new terminal tab, a new SSH session or a new tmux window starts without it, so run cloudgpu-net on there too.
  • It covers Hugging Face, GitHub and similar sites.
  • pip can be slower while it is on. Install packages first (or after cloudgpu-net off), then turn it on for the model downloads.

Step 2: Download less

A file you skip takes no time at all. Many repos hold several copies of the same weights (.safetensors plus .bin, or a dozen GGUF quantizations). List them first; according to the Hugging Face docs, --dry-run “lists all files to download on the repo and checks whether they are already downloaded or not” (download guide, read 2026-11-03):

pip install -U "huggingface_hub"            # do this before cloudgpu-net on
cloudgpu-net on
hf download Qwen/Qwen2.5-7B-Instruct --dry-run
hf download Qwen/Qwen2.5-7B-Instruct --include "*.safetensors" "*.json" "tokenizer*" \
  --local-dir ~/models/qwen2.5-7b-instruct

For a GGUF repo, name the one file you want instead of the whole repo:

hf download <org>/<model>-GGUF <file-name>-Q4_K_M.gguf --local-dir ~/models

Step 3: Use hf_xet high-performance mode, not hf_transfer

Older tutorials say pip install hf_transfer and HF_HUB_ENABLE_HF_TRANSFER=1. The current Hugging Face docs say that variable is deprecated: “all file transfers go through the hf-xet binary package”, and “hf_transfer can’t be used anymore”. hf_xet is installed with huggingface_hub 0.32.0 and later. For more speed, the docs describe HF_XET_HIGH_PERFORMANCE, which “will try to saturate the network bandwidth of this machine and utilize all CPU cores for parallel upload/download activity”:

export HF_XET_HIGH_PERFORMANCE=1
hf download black-forest-labs/FLUX.1-schnell flux1-schnell.safetensors --local-dir ~/models

Two related notes from the same page (read 2026-11-03): HF_XET_NUM_CONCURRENT_RANGE_GETS “is no longer used” because download concurrency has been adaptive since hf_xet 1.3.0, and environment variables “are read at import time”, so export them before you start the command. The old command name huggingface-cli appears in many guides; the current docs use hf.

Step 4: Resume instead of starting over

Run long downloads inside tmux so an SSH drop does not stop them (and run cloudgpu-net on inside the tmux window):

tmux new -s dl
cloudgpu-net on
hf download <org>/<model> --local-dir ~/models/<model>
# detach: Ctrl-b then d   ·   come back: tmux attach -t dl

If a download stops, run the same command again; files that are already complete are not fetched again. If it fails with timeouts, the Hugging Face docs give a default HF_HUB_DOWNLOAD_TIMEOUT of 10 seconds; raise it and rerun:

export HF_HUB_DOWNLOAD_TIMEOUT=60

Interrupted downloads into the cache can leave .incomplete files; per the CLI guide, hf cache prune removes them.

Step 5: Run downloads in parallel

Separate repos (for example a model, its text encoder and a LoRA) can download at the same time from one shell:

cloudgpu-net on
hf download <org>/<model-a> --local-dir ~/models/a > a.log 2>&1 &
hf download <org>/<model-b> --local-dir ~/models/b > b.log 2>&1 &
wait && echo "all downloads finished"

For a single large file from a plain HTTPS URL (a GitHub release asset, a direct link), aria2c splits the file into several connections. Per the aria2 manual (read 2026-11-03), -x is “the maximum number of connections to one server for each download” (default 1), -s downloads “a file using N connections” (default 5) and -c continues a partial download:

apt-get install -y aria2        # if it is missing; you are root on the instance
aria2c -x 8 -s 8 -c -d ~/models -o model.safetensors "https://example.com/path/model.safetensors"

For GitHub repositories you only need to run, a shallow clone skips the history:

git clone --depth 1 https://github.com/<owner>/<repo>.git

Step 6: Check, then clean up

df -h ~                       # free space before and after
hf cache verify <org>/<model> --local-dir ~/models/<model>
cloudgpu-net off

Downloaded models are deleted when you destroy the instance, so keep your download commands in a script and run them on the next instance; you can also run them from a startup script that starts when the instance is handed over. Token setup, gated repos and cache vs --local-dir are covered in how to download a Hugging Face model on a cloud GPU.

Frequently asked questions

What does cloudgpu-net do?

It is a command on every CloudGPU instance: cloudgpu-net on turns on download acceleration for Hugging Face, GitHub and similar sites in the current shell, cloudgpu-net off turns it off, and cloudgpu-net status shows the state. pip can be slower while it is on, so turn it off before installing packages.

Should I still install hf_transfer?

No. The Hugging Face docs mark HF_HUB_ENABLE_HF_TRANSFER as deprecated and say hf_transfer can no longer be used, because all transfers go through hf-xet. Set HF_XET_HIGH_PERFORMANCE=1 instead (read 2026-11-03).

How do I resume a Hugging Face download that stopped?

Run the same hf download command again; complete files are not downloaded again. Run long downloads in tmux, and raise HF_HUB_DOWNLOAD_TIMEOUT (default 10 seconds) if they fail with timeouts.

Can I download several models at once?

Yes. Start separate hf download commands in the background with & and wait for them, or use aria2c with -x and -s for a single large file from a direct URL.

Why is pip slow after cloudgpu-net on?

pip can be slower while download acceleration is on. Run cloudgpu-net off before pip install, then turn it on again for model downloads.

Sources (read 2026-11-03, Asia/Shanghai)


The Deploy page lists the cards you can start. Prices are on https://cloudgpu.app/pricing and are not repeated here.

Last updated: 2026-11-03 (Asia/Shanghai).