CPU環境でQwen3.6-35B-A3Bを動かしたときのメモ

TL;DR

  • 日本語性能は間違いなくGemma4-26B-A4Bの方が良い
  • 24GB RAM + 4コア CPUで動作
  • コンテキストが多くなってくるとCPUのみでは少し厳しい(8kくらいが限界)

環境

Oracle Cloud InfrastructureのAlways Free枠で構築したAmpere A1 Computeを利用

  • OS: Oracle Linux 9
  • CPU: 4コア
  • RAM: 24GB

手順

1. llama.cppをビルド

1
2
3
git clone https://github.com/ggml-org/llama.cpp
cmake -B build -DGGML_NATIVE=ON -DBUILD_SHARED_LIBS=OFF
cmake --build build --config Release -j$(nproc)

2. モデルのダウンロード

1
2
cd models/
wget https://huggingface.co/unsloth/Qwen3.6-35B-A3B-GGUF/resolve/main/Qwen3.6-35B-A3B-UD-IQ4_XS.gguf

3. 実行

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
~/llama.cpp/build/bin/llama-server \
  --host 127.0.0.1 --port 8080 \
  -m ~/llama.cpp/models/Qwen3.6-35B-A3B-UD-IQ4_XS.gguf \
  --threads 4 \
  --ctx-size 8192 \
  --no-mmap \
  --cache-type-k q8_0 \
  --cache-type-v q8_0 \
  --temp 0.7 \
  --top-p 0.8 \
  --top-k 20 \
  --min-p 0.00 \
  --chat-template-kwargs '{"enable_thinking":false}'
  • cache-type-k q8_0, cache-type-v q8_0:指定するとメモリ消費量が結構減った
  • temp 0.7, top-p 0.8, top-k 20, min-p 0.00:公式のおすすめパラメータ(一般タスク)
  • chat-template-kwargs '{"enable_thinking":false}':思考モードはオフ

結果

パフォーマンス

コンテキスト量で変わるが、だいたい 6~10 token/sec くらいの生成速度だった 日本語性能は間違いなくGemma4の方が良い。