Title: Latest AVX-512 Optimization For FFmpeg Shows Wild Improvement On AMD Ryzen - Phoronix Description: No description Keywords: Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite Text content: Latest AVX-512 Optimization For FFmpeg Shows Wild Improvement On AMD Ryzen - Phoronix Articles & Reviews News Archive Forums Premium Ad-Free Contact Popular Categories Close Articles & Reviews News Archive Forums Premium Contact Categories Computers Display Drivers Graphics Cards Linux Gaming Memory Motherboards Processors Software Storage Operating Systems Peripherals Latest AVX-512 Optimization For FFmpeg Shows Wild Improvement On AMD Ryzen Written by Michael Larabel in Multimedia on 18 February 2025 at 08:28 PM EST. 36 Comments Merged today for the widely-used FFmpeg open-source multimedia library was yet another AVX-512 optimized code path... Compared to the pure C code, the AVX2 code path was 10.98x faster while this new AVX-512 code path clocks in at 18x the performance of the common C code. The latest FFmpeg code seeing the AVX-512 treatment is the uyvytoyuv422 function for UYVY to YUV422 format conversion. The AVX-512 optimized code path via hand-written Assembly is a great benefit here. AVX-512 namely found with Intel Xeon processors or all AMD Ryzen and EPYC processors since Zen 4. The benchmarks posted for this patch were carried out with an AMD Ryzen 9 7950X. The gains are very beneficial with this AVX-512 code path hitting 18.02x the performance of the common C path while the AVX2 only path goes at 10.98x. Shreesh Adiga who authored the patch explained: "The scalar loop is replaced with masked AVX512 instructions. For extracting the Y from UYVY, vperm2b is used instead of various AND and packuswb. Instead of loading the vectors with interleaved lanes as done in AVX2 version, normal load is used. At the end of packuswb, for U and V, an extra permute operation is done to get the required layout." A nice win for the next FFmpeg release assuming your CPU supports AVX-512. That's especially true for AMD Zen 4 and even more so with the great AVX-512 AMD Zen 5 showing across their entire CPU product stack. 36 Comments Tweet Related News Google Releases AOM-AV1 3.12 With More Performance OptimizationsFLAC 1.5 Finally Delivers Multi-Threaded EncodingVirtIO Media Driver Upstreaming Pursued For Relaying V4L2 Media Devices To GuestsFFmpeg Lands Video Encoding/Decoding Improvements For NVIDIA Blackwell GPUsSound Open Firmware 2.12 Adds NXP iMX95 Support, Zephyr RTOS For AMD ACP 6.0SoundWire Multi-Lane Support Submitted For Linux 6.14 About The Author Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com. Popular News This Week Karol Herbst Steps Down As Nouveau Maintainer Due To Linux Kernel's Toxic EnvironmentGreg Kroah-Hartman Makes A Compelling Case For New Linux Kernel Drivers To Be Written In RustLinus Torvalds Would Reportedly Merge Rust Kernel Code Over Maintainer ObjectionsLinux Finally Introducing A Standardized Way Of Informing User-Space Over Hung GPUsLinus Torvalds Clearly Lays Out Linux Maintainer Roles - Or Not - Around Rust CodeGNOME Software May Eventually Drop RPM Support In Favor Of FlatpaksFirefox User Manages Experimental Browser Port To GTK4 ToolkitOBS Studio Raises Issues With Fedora's Flatpak Package Latest Linux News Microsoft Makes More Of Their DirectX Compiler Code Open-Source Asahi Linux's Honeykrisp Vulkan Driver Gains Sparse Support In Mesa 25.1 SystemV Filesystem Being Removed From The Linux Kernel KDE Plasma 6.4 Preps Improvement To Help KWin Reduce Frame Drops Ubuntu 25.04 Working To Better Cope With BitLocker-Enabled Windows, Other Improvements Firefox 137 To Support HEVC/H.265 Video Playback On Linux With VA-API Wine 10.2 Upgrades VKD3D, Supports Setting Thread Priorities System76 Releases COSMIC Alpha 6 Desktop Environment Linux's FineIBT Protections "Critically Flawed" Until Intel CPUs Appear With FRED PCSX2 Enables Wayland Support By Default - After Previously Calling It "Super Broken" Show Your Support, Go Premium Phoronix Premium allows ad-free access to the site, multi-page articles on a single page, and other features while supporting this site's continued operations. Latest Featured Articles Benchmarks: Excellent Power Efficiency With 5th Gen AMD EPYC Using amd-pstate & Power Profiles NVIDIA GeForce RTX 5080/5090 Performance With Neat Video 6 On Linux NVIDIA GeForce GTX 980 Through GeForce RTX 5080/5090 GPU Compute Performance ARCTIC Freezer 4U-SP5 Provides Effective Cooling For AMD EPYC 9004/9005 CPUs Healthy Competition With GCC 15 vs. LLVM Clang 20 Performance On AMD Zen 5 Support Phoronix The mission at Phoronix since 2004 has centered around enriching the Linux hardware experience. In addition to supporting our site through advertisements, you can help by subscribing to Phoronix Premium. You can also contribute to Phoronix through a PayPal tip or tip via Stripe. Phoronix Media Contact Michael Larabel OpenBenchmarking.org Phoronix Premium Support Phoronix While Having Ad-Free Browsing, Single-Page Article Viewing Share Facebook Twitter Legal Disclaimer, Privacy Policy, Cookies | Privacy Manager | Contact Copyright © 2004 - 2025 by Phoronix Media. All trademarks used are properties of their respective owners. All rights reserved.