Mistral Medium 3.5 128B を 4x3080 20GB、レイヤースプリット付きで使用:
CUDA_VISIBLE_DEVICES=0,1,2,3 ./build/bin/llama-bench --model /data/huggingface/Mistral-Medium-3.5-GGUF/Mistral-Medium-3.5-128B-IQ4_XS-00001-of-00003. gguf -ngl 99 -d 0,16384 -fa 1 --split-mode layer ggml_cuda_init: 4つのCUDAデバイスを検出(総VRAM: 80211 MiB): デバイス0: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス1: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス2: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス3: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB | model | size | params | backend | threads | fa | test | t/s | | ------------------------------ | ---------: | ---------: | ---------- | ------: | -: | --------------: | -------------------: | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | 1 | pp512 | 330.87 ± 0.99 | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | 1 | tg128 | 10.37 ± 0.00 | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | 1 | pp512 @ d16384 | 216.76 ± 0.26 | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | 1 | tg128 @ d16384 | 9.30 ± 0.00 | build: d05fe1d (275) 最近のllama.cppのPRによるテンソル並列で
CUDA_VISIBLE_DEVICES=0,1,2,3 ./build/bin/llama-bench --model /data/huggingface/Mistral-Medium-3.5-GGUF/Mistral-Medium-3.5-128B-IQ4_XS-00001-of-00003.gguf -ngl 99 -d 0,16384 -fa 1 --split-mode tensor ggml_cuda_init: 4つのCUDAデバイスを検出(総VRAM: 80211 MiB): デバイス0: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス1: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス2: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス3: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB | model | size | params | backend | threads | sm | fa | test | t/s | | ------------------------------ | ---------: | ---------: | ---------- | ------: | -----: | -: | --------------: | -------------------: | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | tensor | 1 | pp512 | 233.88 ± 1.01 | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | tensor | 1 | tg128 | 21.59 ± 0.05 | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | tensor | 1 | pp512 @ d16384 | 214.34 ± 4.16 | | mistral3 ?B IQ4_XS - 4.25 bpw | 62.51 GiB | 125.03 B | CUDA,BLAS | 64 | tensor | 1 | tg128 @ d16384 | 20.31 ± 0.17 | build: d05fe1d (275) TP4は、従来のレイヤースプリットと比べてtg速度を約2倍にします。チャット用途としては速度は許容範囲だと思いますが、モデル自体はあまり良くなく、Gemma-4-31BやQwen3.6-27Bと比較したときに、そのサイズの正当化につながらない可能性があります。
以下は、同程度のサイズのMoEモデルであるQwen3.5-122B-A10Bとの比較です。この構成では、llama.cppのTPはQwen3.5 MoEの生成速度を改善しないかもしれません。
CUDA_VISIBLE_DEVICES=0,1,2,3 ./build/bin/llama-bench --model /data/huggingface/Qwen3.5-122B-GGUF/Qwen3.5-122B-A10B-UD-IQ4_XS-00001-of-00003.gguf -ngl 99 -d 0,16384 -fa 1 --split-mode layer ggml_cuda_init: 4つのCUDAデバイスを検出(総VRAM: 80211 MiB): デバイス0: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス1: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス2: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス3: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB | model | size | params | backend | threads | fa | test | t/s | | ------------------------------ | ---------: | ---------: | ---------- | ------: | -: | --------------: | -------------------: | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | 1 | pp512 | 1087.44 ± 6.95 | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | 1 | tg128 | 60.08 ± 0.80 | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | 1 | pp512 @ d16384 | 945.88 ± 6.70 | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | 1 | tg128 @ d16384 | 57.78 ± 0.72 | build: d05fe1d (275) CUDA_VISIBLE_DEVICES=0,1,2,3 ./build/bin/llama-bench --model /data/huggingface/Qwen3.5-122B-GGUF/Qwen3.5-122B-A10B-UD-IQ4_XS-00001-of-00003.gguf -ngl 99 -d 0,16384 -fa 1 --split-mode tensor ggml_cuda_init: 4つのCUDAデバイスを検出(総VRAM: 80211 MiB): デバイス0: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス1: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス2: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB デバイス3: NVIDIA GeForce RTX 3080、計算能力 8.6、VMM: yes、VRAM: 20052 MiB | model | size | params | backend | threads | sm | fa | test | t/s | | ------------------------------ | ---------: | ---------: | ---------- | ------: | -----: | -: | --------------: | -------------------: | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | tensor | 1 | pp512 | 1216.15 ± 16.63 | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | tensor | 1 | tg128 | 53.49 ± 0.29 | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | tensor | 1 | pp512 @ d16384 | 1110.03 ± 42.33 | | qwen35moe 122B.A10B IQ4_XS - 4.25 bpw | 56.08 GiB | 122.11 B | CUDA,BLAS | 64 | tensor | 1 | tg128 @ d16384 | 56.67 ± 1.39 | build: d05fe1d (275) vLLMがここでは勝っています。MTPをオフにしたメモリ効率の良い構成、チューニング済みのcuda graph構成、そして--language-model-onlyを使っているにもかかわらずです。しかし、その構成ではKVキャッシュが約64kしか残りません。4x3090構成なら、このモデルにとってかなり良くなるはずです。
CUDA_VISIBLE_DEVICES=0,1,2,3 vllm serve Qwen3.5-122B-A10B-GPTQ-Int4 -tp 4 --max-model-len 65536 --gpu-memory-utilization 0.97 --max-num-seqs 8 --tool-call-parser qwen3_xml --reasoning-parser qwen3 --enable-auto-tool-choice --enable-prefix-caching --enable-expert-parallel --compilation_config '{"mode": 3,"cudagraph_mode": "FULL_DECODE_ONLY","cudagraph_capture_sizes": [1,2,4,8]}' --language-model-only vllm bench serve --dataset-name random --num-prompts 8 --backend vllm --host 127.0.0.1 --port 8000 --max-concurrency 8 --tokenizer Qwen3.5-4B --model Qwen3.5-122B-A10B-GPTQ-Int4 --random-input-len 2048 --output-len 256 ============ サービングベンチマーク結果 ============ 成功リクエスト: 8 失敗リクエスト: 0 最大リクエスト同時実行数: 8 ベンチマーク実行時間(s): 10.95 入力トークン総数: 16384 生成トークン総数: 2048 リクエストスループット(req/s): 0.73 出力トークンスループット(tok/s): 187.04 最大出力トークンスループット(tok/s): 416.00 最大同時リクエスト数: 8.00 総トークンスループット(tok/s): 1683.40 ---------------最初のトークンまでの時間---------------- 平均TTFT (ms): 3541.17 中央値TTFT (ms): 3572.61 P99 TTFT (ms): 5782.89 -----出力トークンあたりの時間(最初のトークンを除く)------ 平均TPOT (ms): 28.39 中央値TPOT (ms): 28.59 P99 TPOT (ms): 37.35 ---------------トークン間レイテンシ---------------- 平均ITL (ms): 28.39 中央値ITL (ms): 19.86 P99 ITL (ms): 327.19 ================================================== vllm bench serve --dataset-name random --num-prompts 16 --backend vllm --host 127.0.0.1 --port 8000 --max-concurrency 1 --tokenizer Qwen3.5-4B --model Qwen3.5-122B-A10B-GPTQ-Int4 --random-input-len 2048 --output-len 256 ============ サービングベンチマーク結果 ============ 成功リクエスト: 16 失敗リクエスト: 0 最大リクエスト同時実行数: 1 ベンチマーク実行時間(s): 61.08 入力トークン総数: 32768 生成トークン総数: 4096 リクエストスループット(req/s): 0.26 出力トークンスループット(tok/s): 67.06 最大出力トークンスループット (tok/s): 131.00 最大同時リクエスト数: 2.00 合計トークンスループット (tok/s): 603.58 ---------------最初のトークンまでの時間---------------- 平均TTFT (ms): 732.35 中央TTFT (ms): 651.94 P99 TTFT (ms): 1763.69 -----出力トークンあたりの時間(最初のトークンを除く)------ 平均TPOT (ms): 12.10 中央TPOT (ms): 11.61 P99 TPOT (ms): 13.45 ---------------トークン間レイテンシ---------------- 平均ITL (ms): 12.10 中央ITL (ms): 11.55 P99 ITL (ms): 27.51 ================================================== [リンク] [コメント]



