Integrated Performance Primitives — Википедия

Библиотека Intel Integrated Performance Primitives (Intel IPP) поддерживает многоядерные процессоры, содержит в себе оптимизированные функции для обработки мультимедийных данных, поддерживает Intel и AMD процессоры и работает под операционными системами Windows, Linux и Mac OS X. Intel IPP - небольшая библиотека, спроектированная для создания мультимедийных приложений и приложений обработки данных.

Возможности

[править | править код]

Intel IPP включает в себя следующие функции:

  • кодирование и декодирование видео;
  • кодирование и декодирование аудио;
  • JPEG/JPEG2000
  • машинное зрение;
  • криптография;
  • сжатие данных;
  • преобразование цвета;
  • обработка изображения;
  • трассировка луча/визуализация;
  • обработка сигналов;
  • кодирование речи;
  • распознавание речи;
  • обработка строк;
  • векторная/матричная математика;

Библиотека использует расширенные наборы инструкций процессора MMX, SSE, SSE2, SSE3, SSSE3, SSE4 и многоядерные процессоры.

Структура библиотеки

[править | править код]

Intel IPP разделен на три основные группы: сигналы (линейный массив данных или вектор), изображения (двухмерный массив для типичных цветовых пространств) и матрицы (nxm массивы для матричных операций).

Половина функций для матричных операций, треть для обработки сигналов и оставшиеся для изображений. Функции Intel IPP разделены на 4 типа данных: 8u (8-битные беззнаковые), 8s (8-битные со знаком), 16s, 32f (32-битные с плавающей точкой), 64f и т. д. Как правило, разработчики приложений работают только с одним доминирующим типом данных для большинства функций обработки, и только в конце обработки производят преобразование в выходной формат.

Именование IPP функции подчиняется предсказуемой строгой схеме.

Версия 5.2 была представлена 5 июня 2007 г., в код были добавлены примеры сжатия данных, поддержка новых видео-кодеков, поддержка 64-битных приложений для Mac OS X, поддержка приложений Windows Vista, и новые функции для трассировки луча и визуализации.