Разделы

Цифровизация Бизнес-приложения

«Фаствидео» разработала сверхбыстрый кодек JPEG, оптимизированный для CUDA

Компания «Фаствидео» разработала новый оптимизированный для CUDA кодек JPEG, который позволяет добиться сверхвысокой скорости кодирования и декодирования изображений.

«Быстрое кодирование и декодирование изображений в формате JPEG имеет широкий спектр применений в приложениях, где требуется компрессия больших объёмов данных в реальном времени или при работе с профессиональным оборудованием, которое способно генерировать огромные потоки изображений. Эта технология находит применение в системах видеосъёмки с высокой частотой кадров или с высоким разрешением, а также в задачах визуализации, включая работу с изображениями 4K и 8K в режиме реального времени, — рассказали CNews в «Фаствидео». — Поскольку формат JPEG по-прежнему очень распространён в Сети, то задачи быстрого кодирования, декодирования и обработки таких изображений очень важны для разнообразных веб-приложений, включая высоконагруженные социальные сети и каталоги фотографий».

Как отметили в «Фаствидео», новый сверхбыстрый кодек JPEG использует технологию CUDA от Nvidia для ускорения компрессии и декомпрессии изображений с помощью параллельных вычислений. При создании кодека была реализована и оптимизирована схема, в которой распараллелены абсолютно все стадии алгоритма JPEG, включая энтропийное кодирование и декодирование. А с помощью графических процессоров Nvidia такое решение позволило добиться высокой производительности кодека, утверждают в компании. В частности, использование возможностей GPU привело к освобождению ресурсов центрального процессора для других задач и позволило добиться «беспрецедентной производительности при компрессии и декомпрессии изображений», пояснили в «Фаствидео».

Так, на графическом процессоре Nvidia GeForce GTX Titan кодек JPEG позволяет получить скорость кодирования до 6 ГБ в секунду для изображений, находящихся в оперативной памяти компьютера, что намного превышает пиковую производительность всех существующих многопоточных кодеков JPEG на базе стандартных процессоров, в том числе многоядерных. Такие значения скорости компрессии и декомпрессии пока недоступны и для аппаратных решений на базе ПЛИС (FPGA), подчеркнули в компании. Например, кодек JPEG от «Фаствидео» может сжать в 10 раз цветное изображение 4K с разрешением 3840 x 2160 пикселей всего за 6 миллисекунд.

Увеличить
Производительность кодирования и декодирования изображений по алгоритму JPEG на GPU и CPU на разных кодеках

8 задач, чтобы перезапустить инженерную школу в России
импортонезависимость

Кроме задач кодирования и декодирования изображений, кодек JPEG может применяться и в смежных областях. Его можно использовать для решения задачи быстрого изменения размеров уже сжатых изображений. Для этого нужно сделать декомпрессию картинки, изменить размер и снова сжать изображение. «На графическом процессоре это можно сделать очень быстро, поэтому такое решение является привлекательным для веб-приложений, активно работающих с фотографиями, которые обычно хранятся именно в формате JPEG, — отметили в «Фаствидео». — В этом случае не нужно заранее создавать и хранить несколько копий одной фотографии с разными разрешениями, а по запросу пользователя можно быстро создавать картинку требуемого размера из исходного изображения».

Комплект разработчика JPEG SDK для кодирования и декодирования изображений в формате JPEG предлагается для ОС Windows 7/8 и видеокарт Nvidia серий 400, 500, 600 и 700. Этому критерию соответствуют видеокарты с архитектурой Fermi, Kepler и Titan. В ближайшее время ожидается релиз кодека JPEG и для Linux.

Татьяна Короткова