Die Entwickler des Projekts FFmpeg haben neue Optimierungen für Assembler implementiert, bei denen einige Video-Dekodierungsoperationen durch die Verwendung des AVX-512-Befehlssatzes beschleunigt wurden. Die Leistungssteigerung des Assembler-Codes mit AVX-512-Instruktionen betrug das 94-, 44-, 64- und 4,24-Fache im Vergleich zur Basisimplementierung, die in C ohne Verwendung von SIMD-Instruktionen geschrieben wurde. Im optimierten Assembler-Code auf Basis von AVX-2 betrug der Gewinn 67, 27, 55 und 4,38, während er für SSSE3-Instruktionen 40, 21, 29 und 2,49 betrug. Die Änderungen wurden in die dav1d-Bibliothek aufgenommen, die einen alternativen Dekodierer für das AV1-Video-Encoding-Format anbietet. AVX-512-Instruktionen sind in AMD-Prozessoren der Mikroarchitekturen Zen 4 und 5 sowie in Intel-Prozessoren der Mikroarchitekturen Skylake-X, Ice Lake, Tiger Lake und Rocket Lake verfügbar.

Quelle: opennet.ru
