SUPERSEDED BY a new ik_llama.cpp only quant version - 13% faster PP, marginally smarter
What's that?
Skyfall is a heavy hitter for mainline consumer GPUs. I used to run it at IQ4_XS on 16 GB with partial offload, which was way too slow.
IQ3_M was tolerable, but restrictive of KVO. IQ3_XXS was permissive of KVO, but too dumbed down.
Whereas the lower precision trellis quant was about squeezing the weights into VRAM together with KV cache, this is a different approach - how much Skyfall can we fit fully into VRAM using SOTA quantization techniques if we aim to run without KV offload?
Turns out, quite a bit.
The goals: shove Skyfall into 16 GB VRAM with system overhead, using ik_llama, hopefully make it all smart enough for a mixed 3-4 bit quant.
The result: a hybrid quantization of TheDrummer/Skyfall-31B-v4.2
Quant Details
iq4_kt: token_embd
iq3_k: ffn_up
iq3_k: ffn_gate
iq4_kss: ffn_down
iq5_k: attn_v, attn_k, attn_q
iq6_k: attn_output, output
imatrix by bartowski
quantized with ik_llama.cpp build: 9d07d868
incompatible with mainline llama.cpp
Rationale
So, we had some byte budget to burn upgrading the v1 trellis quant. It suffered in two key areas - relatively low precision attention, and the massive hit of kicking all ffn down to 3 bits. Thanks to SOTA quantization, it remained functional, but we could do better.
Here we follow the tried Qx_K_M approach of keeping anything directly writing into residuals in highest attainable precision, so attn_output ended up at 6.6 bpw, and ffn_down at 4 bpw. Bumping qkv attention above 5.5 bpw would have diminishing returns at this point, so the rest was spent on shoving some extra bits into ffn_up and ffn_gate, which both recieved a 0.315 bpw uplift to IQ3_K.
attn_output didn't need to be that precise, but the extra bits couldn't meaningfully buff ffn. Bumping ffn_down to iq4_ks fails my criteria due to competing with system overhead, though it remains reasonable with a non-displaying GPU (or not running win)
Cheers
MistralAI - the beloved base model(s).
ikawrakow and contributors of ik_llama.cpp - I probably misused your wonderful creation.
TheDrummer - you cooked a legendary one.
bartowski - for the imatrix + the myriad of quants we all benefit from.