Rav1e Rust AV1 Encoder Adds SSSE3 Support, AArch64 NEON - But It's Still Slow
This week's pre-release adds SSSE3 and AArch64 NEON as the newest optimizations to rav1e. That comes on top of other recent work like better rate control, two-pass rate control, x86_64 speed-ups, tiles being expressed in linear units, other new x86_64 SIMD optimizations, a fast 8-bit code-pathm and other work.
Browsing through the rav1e weekly pre-releases provides a glimpse at their recent work.
The Phoronix Test Suite / OpenBenchmarking.org has added a rav1e test profile for easy benchmarking of this Rust AV1 encoder.
But when looking through those early results, the rav1e performance still has a long ways to go (as is generally the case for most AV1 CPU encoders).
Even with tiles/threading, most of the systems tested so far are still only putting out ~1 FPS.
Threadrippers are performing the best of what I have tested.
Intel's SVT-AV1 encoder has the potential to be much faster (11 FPS on an Icelake laptop) when in its fastest encoding mode.
While at a lower encoding mode is similar to rav1e, granted lots of tunables for each of the encoders and other factors.
Nevertheless, it will be interesting to see how the AV1 encoder race plays out over 2020 as well as increasing adoption of this royalty-free video specification that will eventually have GPU hardware encode/decode support.
For those hoping to see rav1e benchmarked daily alongside the other daily video encode/decode benchmarks, for now that is not being expected. As that is just being done for kicks for testing PTS and not ad-supported or supported through other means and with operations being very tight at the moment due to ad blockers, trying to cut back on the energy for daily benchmarks... If you wish to help support such testing, consider joining Phoronix Premium or making a PayPal tip. Thanks.