Views
No views yet
TL;DR The original BF16 release is ~6.1 GB and does not comfortably fit 6 GB of VRAM with KV cache. Quantized to W4A16 (INT4, group size 128) withllmcompressor, it shrinks to ~2.3 GB (2.7x smaller) and serves in vLLM on an RTX 3050 6 GB Laptop GPU at ~66 tok/s single-stream and ~1,400 tok/s batched, with reasoning intact.
W4A16 scheme (4-bit symmetric INT weights, FP16 activations), group size 128, lm_head left unquantized.llmcompressor 0.12, output in compressed-tensors (pack-quantized) format.HuggingFaceH4/ultrachat_200k @ 2048 tokens.| Metric | Value |
|---|---|
| On-disk size | 2.26 GB (from 6.1 GB BF16, 2.7x) |
| KV-cache budget @ 4096 ctx | 16,688 tokens |
| Single-stream throughput | 66.0 tok/s |
| Batched x32 throughput | 1,404 tok/s |
| Kernel | Marlin W4A16 |
3^100 mod 7 = 4 with full Fermat's-little-theorem
working, and lists the first ten primes correctly. This is a spot check, not a full eval. 4-bit
quantization is lossy in general; these specific prompts held up.
1vllm serve syedazeez/Llama-3.2-3B-Instruct-W4A16-G128 \
2 --max-model-len 4096 \
3 --gpu-memory-utilization 0.881from vllm import LLM, SamplingParams
2
3llm = LLM(model="syedazeez/Llama-3.2-3B-Instruct-W4A16-G128",
4 max_model_len=4096, gpu_memory_utilization=0.88)
5out = llm.chat(
6 [[{"role": "user", "content": "State Fermat's little theorem and compute 3^100 mod 7."}]],
7 SamplingParams(temperature=0, max_tokens=400),
8)
9print(out[0].outputs[0].text)