Overview
Quantization reduces model size and accelerates inference by converting model weights and activations from higher precision (FP32) to lower precision formats (INT8, FP16, FP8). Neurenix provides comprehensive quantization support with multiple precision formats and quantization strategies.Quantization Types
Neurenix supports three quantization types:neurenix/quantization.py:20
Quick Start
Quantize a Model
neurenix/quantization.py:166
Quantize a Tensor
neurenix/quantization.py:65
Quantization Methods
INT8 Quantization
Maps FP32 values to 8-bit integers (0-255):neurenix/quantization.py:76
FP16 Quantization
Half-precision floating point:neurenix/quantization.py:90
FP8 Quantization
8-bit floating point (newest format):neurenix/quantization.py:97
QuantizedTensor
Wrapper for quantized tensors with metadata:neurenix/quantization.py:29
QuantizedModule
Wrapper for quantized neural network modules:neurenix/quantization.py:112
Per-Layer Quantization
Quantize different layers with different precision:neurenix/quantization.py:179
Quantization-Aware Training (QAT)
Simulate quantization effects during training:neurenix/quantization.py:275
Post-Training Quantization (PTQ)
Quantize a trained model with calibration:neurenix/quantization.py:312
Model Pruning
Reduce model size by removing unimportant weights:neurenix/quantization.py:222
Complete Example: Image Classification
Calibration Strategies
Calibration computes optimal quantization parameters:neurenix/quantization.py:312
Quantization Formats Comparison
Best Practices
1. Choose the Right Quantization Type
2. Use QAT for Better Accuracy
3. Calibrate with Representative Data
4. Keep Critical Layers in Higher Precision
5. Combine with Pruning
Performance Benchmarks
Typical speedup and accuracy (ImageNet ResNet-50):Debugging Quantization Issues
Compare Layer Outputs
Identify Sensitive Layers
Hardware Considerations
CPU Inference
GPU Inference
Mobile/Edge Devices
Related Topics
- Model Pruning - Remove unnecessary weights
- Knowledge Distillation - Train smaller models
- Mixed Precision Training - FP16 training
- Performance Optimization - General optimization