Интегрированные примитивы производительности
Разработчик(и) | Интел |
---|---|
Стабильная версия | |
Написано в | С / С++ |
Операционная система | Linux , macOS , Microsoft Windows |
Тип | Библиотека или фреймворк |
Лицензия | Проприетарное , бесплатное ПО [3] |
Веб-сайт | программное обеспечение |
Intel Integrated Performance Primitives (Intel IPP ) — это обширная библиотека готовых к использованию функций, ориентированных на конкретную предметную область, которые оптимизированы для различных архитектур Intel. Его бесплатные API-интерфейсы помогают разработчикам использовать преимущества инструкций SIMD (одна инструкция, несколько данных). [4]
Библиотека поддерживает процессоры Intel и совместимые процессоры и доступна для Linux , macOS и Windows . Она доступна отдельно или как часть Intel oneAPI Base Toolkit . [4]
В выпусках Intel IPP используется семаническая схема управления версиями, поэтому, хотя основная версия выглядит как год (ГГГГ), технически это не означает год. Поэтому оно может не меняться каждый календарный год. [5]
Функции
[ редактировать ]Библиотека использует возможности процессоров, включая MMX , SSE , SSE2 , SSE3 , SSSE3 , SSE4 , AVX , AVX2 , AVX-512 , AES-NI и многоядерные процессоры . [6] Intel IPP включает функции для:
- Декодирование/кодирование видео
- Аудио декодирование/кодирование
- JPEG / JPEG2000 / JPEG XR
- Компьютерное зрение
- Криптография
- Сжатие данных
- Преобразование цвета изображения
- Обработка изображений
- Трассировка лучей и рендеринг
- Обработка сигналов
- Кодирование речи
- Распознавание речи
- Обработка строк
- Векторная и матричная математика
Организация
[ редактировать ]Intel IPP разделен на четыре основные группы обработки: обработка сигналов (с линейными массивами или векторными данными), обработка изображений (с двумерными массивами для типичных цветовых пространств), сжатие данных и криптография. [6]
Половина точек входа имеют матричный тип, треть — сигнальный тип, а остальные — изображения и криптографический тип. Функции Intel IPP разделены на 4 типа данных: типы данных включают 8u (8-битный беззнаковый), 8s (8-битный со знаком), 16s, 32f (32-битный с плавающей запятой), 64f и т. д. Обычно разработчик приложения работает только с одним доминирующим типом данных для большинства функций обработки, преобразуя входные данные в форматы обработки и вывода в конечных точках. [6]
История
[ редактировать ]- Файлы версии 2.0 датированы 22 апреля 2002 г.
- Версия 3.0
- Файлы версии 4.0 датированы 11 ноября 2003 г. Среда выполнения 4.0 полностью поддерживает приложения, написанные для версий 3.0 и 2.0.
- Файлы версии 5.1 датированы 9 марта 2006 г. Среда выполнения 5.1 не поддерживает приложения, написанные для версии 4.0 или более ранней.
- Файлы версии 5.2 датированы 11 апреля 2007 г. Среда выполнения 5.2 не поддерживает приложения, написанные для версии 5.1 или более ранней. Представлен 5 июня 2007 г. и включает примеры кода для сжатия данных, поддержку новых видеокодеков, поддержку 64-разрядных приложений в Mac OS X, поддержку Windows Vista и новые функции трассировки лучей и рендеринга.
- Версия 6.1 была выпущена вместе с компилятором Intel C++ 28 июня 2009 г. Обновление 1 для версии 6.1 было выпущено 28 июля 2009 г. Файлы обновления 2 датированы 19 октября 2009 г. [7]
- Версия 7.1 [8]
- Версия 8.0 [9]
- Версия 8.1 [10]
- Версия 8.2 [11]
- Первоначальный выпуск версии 9.0, 25 августа 2015 г. [12]
- Версия 9.0 Обновление 1, 1 декабря 2015 г. [13]
- Версия 9.0 Обновление 2
- Версия 9.0 Обновление 3
- Версия 9.0 Обновление 4
- Версия 2017, первоначальный выпуск
- Версия 2017, обновление 1
- Версия 2017, обновление 2
- Версия 2017 Обновление 3, 28 февраля 2016 г. [1]
- Версия 2018, первоначальный выпуск
- Версия 2018, обновление 1
- Версия 2018 г., обновление 2
- Версия 2018 Обновление 2.1
- Версия 2018, обновление 3
- Версия 2018 Обновление 3.1
- Версия 2018 Обновление 4, 20 сентября 2018 г. [1]
- Версия 2019, первоначальный выпуск
- Версия 2019 Обновление 1
- Версия 2019 Обновление 2
- Версия 2019 Обновление 3, 14 февраля 2019 г. [1]
- Версия 2019 Обновление 4
- Версия 2019 Обновление 5
- Версия 2020, первый выпуск, 12 декабря 2019 г. [1] [2]
- Версия 2020 Обновление 1, 30 марта 2020 г. [1] [2]
- Версия 2020 Обновление 2, 16 июля 2020 г. [1] [2]
- Версия 2020, обновление 3
- Версия 2021, первоначальный выпуск
- Версия 2021.1
- Версия 2021.2
- Версия 2021.3
- Версия 2021.4
- Версия 2021.5
- Версия 2021.6
- Версия 2021.7, декабрь 2022 г. [14]
- Версия 2021.8, апрель 2023 г. [14]
- Версия 2021.9.0, июль 2023 г. [14]
- Версия 2021.9.1, октябрь 2023 г. [14]
- Версия 2021.10.0, ноябрь 2023 г. [14]
- Версия 2021.10.1, декабрь 2023 г. [14]
- Версия 2021.11.0, март 2024 г. [14]
- Версия 2021.12.0, июнь 2024 г. [15]
Аналоги
[ редактировать ]- Вс : mediaLib для Solaris
- Apple : vDSP , vImage , Accelerate и т. д. для macOS.
- AMD : Framewave (ранее AMD Performance Library или APL)
- Группа Хронос : OpenMAX DL
- Примитивы производительности NVIDIA [16]
См. также
[ редактировать ]- Базовый набор инструментов Intel oneAPI
- Набор инструментов Intel oneAPI HPC
- Набор инструментов Intel oneAPI IoT
- Intel oneAPI Библиотека анализа данных (oneDAL)
- Intel oneAPI Библиотека математического ядра (oneMKL)
- Строительные блоки Intel oneAPI Threading (oneTBB)
- Советник Intel
- Инспектор разведки
- Intel VTune Profiler
- Intel Developer Zone (Intel DZ; поддержка и обсуждение)
Ссылки
[ редактировать ]- ^ Перейти обратно: а б с д и ж г «Примечания к выпуску и новые функции библиотеки Intel® Integrated Performance Primitives» . программное обеспечение.intel.com .
- ^ Перейти обратно: а б с д «Исправления ошибок Intel® IPP 2020» . программное обеспечение.intel.com .
- ^ «Бесплатные варианты для Intel Parallel Studio XE. Поддержите себя, без лицензионных отчислений» .
- ^ Перейти обратно: а б «Примитивы интегрированной производительности Intel®» . Интел . Проверено 3 апреля 2024 г.
- ^ «Набор инструментов Intel® oneAPI и схема управления версиями компонентов» . Интел . Проверено 3 апреля 2024 г.
- ^ Перейти обратно: а б с «Библиотека Intel Integrated Performance Primitives (Intel IPP)» .
- ^ «Примечания к выпуску библиотеки Intel Integrated Performance Primitives (Intel IPP) 6.1» .
- ^ «Примечания к выпуску библиотеки Intel Integrated Performance Primitives (Intel IPP) 7.1» .
- ^ «Примечания к выпуску библиотеки Intel Integrated Performance Primitives (Intel IPP) 8.0» .
- ^ «Примечания к выпуску библиотеки Intel Integrated Performance Primitives (Intel IPP) 8.1» .
- ^ «Примечания к выпуску библиотеки Intel Integrated Performance Primitives (Intel IPP) 8.2» .
- ^ «Примечания к выпуску библиотеки Intel Integrated Performance Primitives (Intel IPP) 9.0» .
- ^ «Библиотека Intel Integrated Performance Primitives (Intel IPP) 9.0 Github» .
- ^ Перейти обратно: а б с д и ж г Харрисон, Памела. «Примечания к выпуску Intel® Integrated Performance Primitives для Intel®...» Intel . Проверено 3 апреля 2024 г.
- ^ Харрисон, Памела. «Примечания к выпуску Intel® Integrated Performance Primitives для Intel®...» Intel . Проверено 23 июля 2024 г.
- ^ «Примитивы производительности NVIDIA (NPP)» . Разработчик NVIDIA . Проверено 3 апреля 2024 г.
Внешние ссылки
[ редактировать ]- Официальный сайт
- Домашняя страница базового инструментария Intel oneAPI
- Стюарт Тейлор, «Интегрированные примитивы производительности Intel — как оптимизировать программные приложения с помощью Intel IPP» , Intel Press.
- Реализация Jpeg Delphi с использованием официальной библиотеки JPEG Group C или библиотеки Intel Jpeg Library 1.5 (включая ijl.dll)
- Как установить OpenCV с помощью IPP (на французском языке)