• Реклама: 💰 Пополни свой портфель с минимальной комиссией на Transfer24.pro
  • Добро пожаловать на инвестиционный форум!

    Во всем многообразии инвестиций трудно разобраться. MMGP станет вашим надежным помощником и путеводителем в мире инвестиций. Только самые последние тренды, передовые технологии и новые возможности. 400 тысяч пользователей уже выбрали нас. Самые актуальные новости, проверенные стратегии и способы заработка. Сюда люди приходят поделиться своим опытом, найти и обсудить новые перспективы. 16 миллионов сообщений, оставленных нашими пользователями, содержат их бесценный опыт и знания. Присоединяйтесь и вы!

    Впрочем, для начала надо зарегистрироваться!
  • 🐑 Моисей водил бесплатно. А мы платим, хотя тоже планируем работать 40 лет! Принимай участие в партнеской программе MMGP
  • 📝 Знаешь буквы и умеешь их компоновать? Платим. Дорого. Бессрочная акция от MMGP: "ОПЛАТА ЗА СООБЩЕНИЯ"
  • 💰 В данном разделе действует акция с оплатой за новые публикации
  • 📌 Внимание! Перед публикацией новостей ознакомьтесь с правилами новостных разделов

Разработчики FFmpeg хвастаются ростом производительности до 94 раз после внедрения рукописного ассемблерного кода AVX-512

ФФ.jpg

Современные языки программирования высокого уровня и продвинутые компиляторы значительно упрощают разработку программного обеспечения и снижают его стоимость. Однако такой способ программирования может скрывать возможности производительности современного оборудования, отчасти из-за неэффективности интерфейсов прикладного программирования (API). По данным FFmpeg, старый добрый путь к ассемблерному коду может повысить производительность в три - 94 раза, в зависимости от рабочей нагрузки. На каком аппаратном обеспечении была достигнута эта многократно возросшая производительность, не сообщается.

FFmpeg - это проект декодирования видео с открытым исходным кодом, разрабатываемый добровольцами, которые вносят свой вклад в его кодовую базу, исправляют ошибки и добавляют новые функции. Проект возглавляет небольшая группа основных разработчиков и сопровождающих, которые следят за его направлением и обеспечивают соответствие вкладов определенным стандартам.

Они координируют циклы разработки и выпуска проекта, объединяя вклады других разработчиков. Эта группа разработчиков попыталась реализовать рукописный путь кода ассемблера AVX512, что редко делалось ранее, по крайней мере, в видеоиндустрии.
Разработчики создали оптимизированный путь кода с использованием набора инструкций AVX-512 для ускорения определенных функций в библиотеке обработки мультимедиа FFmpeg.

Используя AVX-512, они смогли добиться значительного прироста производительности - от трех до 94 раз - по сравнению со стандартными реализациями. AVX-512 позволяет обрабатывать большие куски данных параллельно, используя 512-битные регистры, которые могут обрабатывать до 16 FLOPS с одинарной точностью или 8 FLOPS с двойной точностью за одну операцию. Такая оптимизация идеально подходит для тяжелых вычислительных задач в целом, а в случае обработки видео и изображений - в особенности.

Результаты бенчмарков показывают, что новая рукописная кодовая дорожка AVX-512 работает значительно быстрее других реализаций, включая базовый код на языке C и более низкие наборы SIMD-инструкций, такие как AVX2 и SSE3. В некоторых случаях обновленный кодовый путь AVX-512 достигает ускорения почти в 94 раза по сравнению с базовым, что подчеркивает эффективность оптимизированного вручную ассемблерного кода для AVX-512.

Эта разработка особенно ценна для пользователей, работающих на высокопроизводительном оборудовании с поддержкой AVX-512, позволяя им обрабатывать медиаконтент гораздо эффективнее. Однако есть проблема: Intel отключила AVX-512 в процессорах Core 12-го, 13-го и 14-го поколений, оставив владельцев этих CPU без него. С другой стороны, процессоры AMD Ryzen серии 9000 оснащены полностью поддерживающим AVX-512 FPU, поэтому владельцы этих процессоров могут воспользоваться достижением FFmpeg.

К сожалению, из-за сложности и специализированного характера AVX-512 такие оптимизации обычно предназначены для критически важных приложений и требуют знаний в области низкоуровневого программирования и микроархитектуры процессора.

Оригинал
Уникальность
 
Сверху Снизу