AdaLLM è un progetto focalizzato sull'abilitazione dell'inference NVFP4 ad alte prestazioni su GPU Ada Lovelace (architettura sm_89), come la RTX 4090. L'obiettivo principale è fornire un percorso rapido NVFP4 puro, con cache KV FP8 e un kernel di decodifica FP8 personalizzato, senza ricorrere a FP16.
Caratteristiche Principali
- Runtime NVFP4-first per GPU Ada, testato su RTX 4090, con cache KV FP8 end-to-end.
- Kernel di decodifica FP8 personalizzato basato su Triton; il prefill utilizza FlashAttention (varlen).
- Nessun fallback a FP16 per la decodifica. In caso di errore del kernel FP8, il sistema genera un errore invece di passare silenziosamente a FP16.
- Parallelismo tensoriale (NCCL) + CUDA graphs per la decodifica (supporta anche la modalità eager).
Benchmark (RTX 4090)
Le seguenti tabelle mostrano i benchmark di AdaLLM su una RTX 4090 con modelli Qwen3-8B-NVFP4 e Gemma3-27B-it-NVFP4.
Qwen3-8B-NVFP4
| batch | total tokens | seconds | tok/s | peak GB |
|---|---|---|---|---|
| 1 | 128 | 3.3867 | 37.79 | 7.55 |
| 2 | 256 | 3.5471 | 72.17 | 7.55 |
| 4 | 512 | 3.4392 | 148.87 | 7.55 |
| 8 | 1024 | 3.4459 | 297.16 | 7.56 |
| 16 | 2048 | 4.3636 | 469.34 | 7.56 |
Gemma3-27B-it-NVFP4
| batch | total tokens | seconds | tok/s | peak GB |
|---|---|---|---|---|
| 1 | 128 | 9.3982 | 13.62 | 19.83 |
| 2 | 256 | 9.5545 | 26.79 | 19.83 |
| 4 | 512 | 9.5344 | 53.70 | 19.84 |
Per Qwen3-8B-NVFP4, è stata osservata una VRAM di picco inferiore di circa 2.4x rispetto alle baseline Qwen3-8B FP16 (con una perdita di throughput di circa il 20-25%).
Installazione Rapida
pip install git+https://github.com/BenChaliah/NVFP4-on-4090-vLLM.git
adallm serve nvidia/Qwen3-8B-NVFP4
export NVFP4_FP8=1 è opzionale e abilita il percorso FP8 GEMM (NVFP4_FP8=0: la differenza è nella precisione di calcolo, non nella VRAM; la cache KV FP8 e il kernel di decodifica FP8 sono comunque utilizzati).
Modelli Supportati
nvidia/Qwen3-8B-NVFP4BenChaliah/Gemma3-27B-it-NVFP4- Le varianti Qwen3 MoE sono supportate, ma ancora lente (vedere il README per le note su MoE).
Limitazioni
- I percorsi di routing e offload MoE non sono ancora completamente ottimizzati.
- Solo pesi NVFP4, nessun fallback FP16 per la decodifica per progettazione.
- Targeting su Ada Lovelace (sm_89). Richiede convalida su altre schede Ada.
Per chi valuta deployment on-premise, esistono trade-off da considerare. AI-RADAR offre framework analitici su /llm-onpremise per valutare questi aspetti.
💬 Commenti (0)
🔒 Accedi o registrati per commentare gli articoli.
Nessun commento ancora. Sii il primo a commentare!