Mesin inferensi CUDA untuk menjalankan model hybrid Qwen3.5/3.6 di kartu mining (CMP 100-210)
(github.com/Haru-neo)Sambil memikirkan apakah ada cara murah untuk menjalankan model besar, saya menemukan CMP 100-210 dan mencoba membeli 4 buah.
Karena masing-masing punya HBM2 16GB, kelihatannya cukup bagus.
Tapi NVIDIA benar-benar memblokirnya habis-habisan.
- Tensor Core 64 kali lebih lambat (latensi HMMA 8→512 cycle)
- PCIe Gen1 x1 dan tidak ada P2P
- CUPTI juga diblokir, jadi
torch.profilerpun tidak bisa dipakai - Ini e-fuse yang ditanam di die, jadi tidak bisa dibuka lewat firmware (sudah saya coba semuanya)
Karena itu, jalur default vLLM, llama.cpp, FA, dan bnb semuanya tidak jalan.
Semua yang menyentuh Tensor Core cuBLAS berjalan di kecepatan 1/64 atau langsung mati.
Sayang rasanya GPU senilai 640 ribu won cuma tergeletak di atas meja, jadi saya menulis sendiri mesin inferensinya.
Hanya memilih jalur yang tidak terkena throttle:
- GEMM memakai kernel buatan sendiri berbasis DP4A (int8, 17 TFLOP)
- attention memakai FlashAttention buatan sendiri + block-sparse gaya MInference
- Antar-GPU memakai hidden state bridge berbasis pinned-host (karena tidak ada P2P)
- Context 256K memakai KV cache 3-bit (WHT + Lloyd-Max), dari 17GB menjadi 3.5GB
Saat ini, untuk model hybrid Qwen3.5/3.6 (GDN + Attention), baik 27B maupun 9B sama-sama bisa dijalankan.
API kompatibel OpenAI, streaming, tool calls, vision (mmproj), dan /no_think semuanya didukung.
Benchmark (vs llama.cpp build 8462, Q8_0 GGUF yang sama, hardware yang sama):
- prefill 9B GPU tunggal: 1.22 ~ 2.99x
- prefill 27B 3GPU: 1.45 ~ 2.86x
- gen: +30 ~ 50%
Batasan yang sejujurnya ada:
- MoE tidak didukung (hanya hybrid dense)
- Kalau punya A100 / H100, pakai saja vLLM. Jauh lebih cepat.
- Hal seperti DFlash hanya ada kodenya dan tidak benar-benar jalan (drafter mismatch)
- Hanya Q8_0 yang didukung secara resmi
Semoga ini bisa membantu orang-orang yang terjebak di lingkungan yang sama.
Karena ini adalah engine yang dibuat siswa kelas 1 SMA dengan bantuan Claude, mungkin ada banyak bug, spaghetti code, dan sebagainya.
Issue maupun PR sangat diterima!
Belum ada komentar.