| name | grinqh-adaptive-quantization-hierarchy |
| description | Graded Input-based Quantization Hierarchy for efficient LLM generation. Dynamic precision assignment based on activation magnitudes as computational importance proxy. Unifies quantization and sparsification. |
| trigger_words | ["adaptive quantization","graded precision","LLM efficiency","memory bandwidth","dynamic bit-width"] |
| version | 1 |
| arxiv | 2606.23419v1 |
| authors | Jette Oberländer, Jan Finkbeiner, Catherine M. Schöfde Schöfmann, Emre Neftci |
| date | 2026-06-22T00:00:00.000Z |
| categories | cs.LG, cs.AI |
GRINQH: Graded Input-based Quantization Hierarchy for Efficient LLM Generation
Core Insight: Use activation magnitudes as computational importance proxy to dynamically assign weight channels to different precision levels during decoding.
Problem Addressed
- Memory bandwidth bottleneck in autoregressive decoding
- Prefill vs. decoding asymmetry - compute-bound vs. memory-bound stages
- Uniform quantization ignores stage-specific needs
- Fixed bit-width limits flexibility
Key Methodology
Graded Quantization Framework
- Activation Magnitude Proxy: Use activations to estimate computational importance
- Dynamic Precision Assignment: Assign weight channels to precision levels based on importance
- Hierarchical Memory Layout: Nested layout for multi-precision storage
- Unified Quantization + Sparsification: Combine both for decoding acceleration
Implementation Pattern
def grinqh_quantize(weights, activations_history):
importance_scores = compute_channel_importance(activations_history)
precision_assignment = assign_precision_hierarchy(
importance_scores,
avg_bit_width_target
)
quantized_weights = hierarchical_quantize(
weights,
precision_assignment
)
sparse_weights = apply_sparsification(quantized_weights)
return sparse_weights, precision_assignment
def assign_precision_hierarchy(importance, target_bits):
precision_map = {
'high': 4-bit,
'medium': 3-bit,
: -bit
}
precision_map