- Наибольшая скорость FFMPEG, которая, однако, влияет только на функцию, о которой слышали лишь несколько человек.
- Рукописная ассамблея отмечает возвращение в нишевом фильтре, который большинство пользователей никогда не будут касаться
- AVX512 дает FFMPEG абсурдную 100 -кратную прибыль — но только если ваш процессор поддерживает его
Проект FFMPEG, который известен тем, что выполняет некоторые из наиболее часто используемых программного обеспечения для редактирования видео и медиа -инструментов, снова делает заголовки.
Разработчики утверждают, что достигли того, что они описывают как «наибольшее ускорение до сих пор», что достигло увеличения производительности в 100 раз в недавно выполненном обновлении.
Улов? Это относится только к одной, неясной функции и средствам для их достижения, бровей — рукописным кодом сборки, технологии, которая в значительной степени устарела большинством разработчиков.
Ассамблее -кодирование исходит как ностальгия, так и скептицизм
Язык встречи, когда -то важный, чтобы получить максимальное количество ограниченного оборудования в 1980 -х и 1990 -х годах, стал нишевой практикой.
Тем не менее, разработчики FFMPEG продолжают полагаться на экстремальную оптимизацию и описывают себя как «евангелистов собрания».
В вашем последнем патче у вас есть фильтр под названием Rangedetect8_avx512 с инструкциями AVX512, часть современного набора инструментов SIMD (индивидуальная инструкция, несколько данных), с процессорами с использованием процессоров параллельно.
Для систем без поддержки AVX512 вариант AVX2 по -прежнему обеспечивает улучшение 65,63%.
Как подчеркивает команда: «Это единственная функция, которая сейчас в 100 раз быстрее, а не весь FFMPEG».
Это сообщение следует за аналогичной тягой, которая была зарегистрирована в ноябре 2024 года, еще один патч принес определенные операции в 94 раза быстрее.
В этом случае часть более раннего разрыва в производительности была получена из-за сложности не совпадающего фильтра: общая версия C использовала 8-часть, в то время как в версии SIMD использовался более простой подход с 6 часами.
Даже компиляция версии C в режиме выпуска с лучшим компилятором, таким как Clang, может закрыть более 50% от разрыва, что указывает на то, что некоторые из предполагаемых повышений скорости могли быть преувеличены путем сравнения наихудшего случая с условиями наилучшего случая.
«Регистрационные распределители отстой на компиляторах», — пошутил разработчиков в социальных сетях и подчеркнул неэффективность компиляторов.
Несмотря на ограничения, этот возобновление внимания на кодировании на низком уровне вызвало новые дискуссии об оптимизации производительности.
FFMPEG поставляет все: от VLC Media Player до бесчисленных загрузок YouTube, так что даже небольшие улучшения в изолированных фильтрах могут пройти широкое распространение программного обеспечения.
Тем не менее, стоит отметить, что такие результаты часто трудно воспроизвести и используются в более широких частях базы кода.
Хотя эти типы глубоких оптимизаций впечатляют, вы можете не отражать реальные улучшения для повседневных пользователей, которые редактируют материал фильма с помощью программного обеспечения для редактирования видео.
Если другие основные функции не получают аналогичную обработку, обещание более быстрого FFMPEG может быть ограничено техническими показателями.
Над Tomshardware