Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Лажа при использовании Intel IPP v4.1 ?
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Dimonira
Надо было сделать бенчмарк для расчёта 256-точечного ДПФ на интеловском процессоре (сейчас у меня пень-4 3200 МГц с ГТ).
Взял Intel IPP v4.1 либу и на основе её примера сделал этот бенчмарк.
Для ДПФ использовал функцию ippsDFTFwd_RToPerm_16s_Sfs.
Бенчмарк заключается в измерении времени выполнения 10000 вызовов вышеназванной функции (в цикле).
Измерение времени я сначала сделал с использованием функций QueryPerformanceFrequency (выдаёт частоту проца в Герцах) и QueryPerformanceCounter (читает текущее значение внутреннего таймера-счётчика процессора). Последнюю функцию соответственно вызываю до цикла и после, потом считаю разницу и делю на частоту - получаю время выполнения.
В итоге получил время выполнения одного 256-точечного ДПФ = около 2 мкс.
Бенчмарк "пролетал" можно сказать мгновенно (ну, т.е. около 20 мс).

Потом в доке на либу наткнулся на аналогичные (как я сначала подумал) функции, которые можно было использовать тоже для измерения времени.
Это функции ippGetCpuFreqMhz и ippCoreGetCpuClocks. Алгоритм измерения оставил тот же самый (отличие только в формате вызовов этих функций).
В итоге запустив бенчмарк оказалось, что он выполняется где-то 2 секунды (вместо 20 мс)!!! Я охренел и заподозрил Интел в нехорошем.
Оказалось время съедается вызовами самих этих функций (скорее только ippCoreGetCpuClocks). Но при этом расчётное время выполнения одного 256-точечного ДПФ такое же. Получается, если я буду использовать эти фукции во многих местах, то могу лечь спать пока программа не закончится.

Что за х..ню Интел подсунул?
Кто-нибудь такое замечал?
Или ippCoreGetCpuClocks вовсе не эквивалент (по реализации) QueryPerformanceCounter?
yornik
Off: а где саму IPP взять можно?
UserUser
www.developer.intel.com - бесплатно демо версию
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.