dav1d AVIF Decoding Throughput Benchmarks
The integration of the dav1d decoder for AV1 Image File Format (AVIF) decoding has delivered massive performance gains across web browsers and operating systems compared to legacy decoders like libaom. This article examines the benchmark scores, throughput rates, and latency reductions that demonstrate dav1d's decoding speed advantages over alternative AV1 decoders.
dav1d vs. libaom Throughput Comparison
When libavif transitioned its default software decoding backend from libaom to dav1d, decoding throughput increased substantially. Benchmarks consistently show dav1d outperforming libaom across standard image resolutions:
- Single-Threaded Throughput: On modern x86-64 and ARM64 architectures, dav1d achieves a 2x to 3x increase in raw decoding throughput compared to libaom. While libaom typically processes 10-bit and 8-bit AVIF images at roughly 25 to 40 megapixels per second (MP/s) on a modern desktop CPU core, dav1d regularly exceeds 75 to 110 MP/s under identical conditions.
- Multi-Threaded Throughput: dav1d features superior thread pooling and tile-based multi-threading. When decoding multi-tiled AVIF files across 4 to 8 CPU threads, dav1d achieves a 4x to 5.5x throughput gain over libaom, frequently saturating modern multi-core processors at speeds surpassing 350 MP/s.
Real-World Decode Latency
Benchmark tests measuring wall-clock decoding time for real-world AVIF images demonstrate major latency drops:
- Full HD (1080p) Images: Standard 1920x1080 AVIF photographs that required between 45ms and 65ms to decode using libaom drop to approximately 12ms to 18ms with dav1d.
- 4K UHD (2160p) Images: For high-resolution 3840x2160 assets, libaom decode latencies typically range from 180ms to 240ms. Under dav1d, processing times drop to 40ms to 65ms on modern desktop hardware, placing AVIF decoding times within competitive range of optimized JPEG and WebP decoders.
Browser-Level Benchmarks (Chromium and Firefox)
Telemetry and synthetic image rendering benchmarks recorded during the rollout of dav1d in Chromium and Mozilla Firefox highlight specific performance jumps:
- Time to First Paint: Chromium telemetry recorded a 50% to 60% reduction in image decode time across all platforms when switching the underlying AVIF decoder to dav1d.
- CPU Utilization: During heavy page loads containing numerous AVIF assets, dav1d reduces CPU time spent in image decoding loops by roughly 40%, preventing main-thread blocking and improving scroll smoothness.
Architecture-Specific Optimizations
The throughput gains of dav1d stem primarily from hand-crafted SIMD assembly routines:
- AVX2 / AVX-512 (x86-64): dav1d exhibits near-linear scaling when utilizing AVX2 and AVX-512 extensions, providing up to a 6x speedup over unoptimized baseline C code.
- ARM NEON (Mobile/Apple Silicon): On mobile chipsets and Apple M-series processors, NEON assembly in dav1d delivers a 2.5x to 4x throughput boost over libaom, making full-resolution AVIF rendering viable on power-constrained mobile devices without noticeable UI lag.