FFmpeg developers claim 94x speed boost using handwritten AVX-512 code

You May Be Interested In:Develop:Brighton 2025’s sunny exterior hid bleak thoughts | Opinion


In context: Advanced vector extensions are a type of “single instruction, multiple data” extension to the x86 instruction set architecture, implemented by Intel and AMD in modern CPUs. These instructions can significantly enhance parallel processing workloads, especially when used with 512-bit registers and other advanced features available in the AVX-512 instruction set.

The FFmpeg team recently highlighted how AVX-512 instructions can deliver a significant performance boost in video processing workloads. According to a slide presented by one of the developers, optimized “handwritten assembly” leveraging these SIMD instructions can accelerate video decoding routines by three to 94 times.

While no specifics were provided about the CPU or system used for benchmarking, AVX-512 technology first appeared in Intel’s Xeon Phi x200 (Knights Landing) CPU series in 2016. The substantial performance gains stem from the combination of AVX-512 vector instructions with highly optimized assembly code, though AVX instructions were originally designed to enhance SIMD parallel processing from the outset.

FFmpeg is a free, open-source software package that offers a comprehensive suite of libraries and tools for handling audio and video streams – a true Swiss army knife of multimedia, used by popular media players like VLC and major corporations including YouTube. The core FFmpeg team oversees the project, while a community of volunteers contributes code and patches.

FFmpeg currently relies on assembly language for about eight percent of its codebase, the developers said, leaving plenty of room for performance improvements. Assembly is a low-level language that few programmers specialize in today, especially since much of the software industry now prioritizes high-level, accessible languages like Python.

Still, skilled developers are always eager to maximize performance on the latest hardware. FFmpeg includes custom “handwritten” decoding routines for both x86 and ARM processors, even as some in the software industry wish for AVX-512 to die “a painful death.”

Recently, Intel introduced AVX10, a reimagined ISA that standardizes AVX-512 instructions across all x86 CPU architectures and core types. However, Intel made waves when it disabled AVX-512 support at the firmware level on 12th-gen Core processors and later models, effectively removing the SIMD ISA from its consumer chips.



share Paylaş facebook pinterest whatsapp x print

Similar Content

Google owner Alphabet drops promise over 'harmful' AI uses
Google owner Alphabet drops promise over ‘harmful’ AI uses
Once India
Once India’s hottest startup, Byju’s admits mistakes as company plummets from $22 billion to zero
'Argument won' on smartphones in schools, minister says
‘Argument won’ on smartphones in schools, minister says
Microsoft issues reminder that Windows Server Update Services will soon stop providing driver downloads
Microsoft issues reminder that Windows Server Update Services will soon stop providing driver downloads
Study finds CT scans could be responsible for 103,000 new cancer cases in the US each year
Study finds CT scans could be responsible for 103,000 new cancer cases in the US each year
Man narrows landfill search for $771 million Bitcoin hard drive with finely tuned plan
Man narrows landfill search for $771 million Bitcoin hard drive with “finely tuned” plan
Flash News Hub | © 2024 | News