2014-12-17 2 views

ответ

2

Вы можете делать эксперименты самостоятельно. IPP поставляется с утилитой измерения производительности, обычно «ps * .exe» в каталоге ipp \ tools \ perfsys. Трудно сказать, как это было во время IPP 6.x, но это должно быть похоже. Исполняемые файлы «ps * .exe» позволяют измерять определенную производительность функции IPP с точки зрения количества часов на элемент (чем ниже, тем лучше, конечно) для различных оптимизаций ЦП. Основные возможности для этих перфомансов. тесты «-?», «-e» показывают все функции в тесте, «-T» включает только определенную оптимизацию ЦП, «-r» сохраняет вывод в файл csv.

Предположим, вы хотите измерить функцию ippsIIR64f_32s_Sfs для процессоров AVX, SSE41 и SSE3. Вы должны начать ps_ipps.exe (который является 1D теста производительности домена) три раза:

ps_ipps.exe -fippsIIR64f_32s_Sfs -B -R -TAVX (you'll get csv file with AVX optimization results) 
ps_ipps.exe -fippsIIR64f_32s_Sfs -B -R -TSSE41 (SSE4.1 perf. data will be appended to csv) 
ps_ipps.exe -fippsIIR64f_32s_Sfs -B -R -TSSE3" (SSE3 performance data will be appended). 

Затем Grep CSV файл для искомой функции/комбинации аргументов, например

find "ippsIIR64f,32s,Sfs,32768,6,numBq_DF1" ps_ipps.csv 

Например, я получаю

ippsIIR64f,32s,Sfs,32768,6,numBq_DF1,-,-,0,nLps=2048,1.30,cpMac,512,- 
ippsIIR64f,32s,Sfs,32768,6,numBq_DF1,-,-,0,nLps=8,1.56,cpMac,613,- 
ippsIIR64f,32s,Sfs,32768,6,numBq_DF1,-,-,0,nLps=4,5.61,cpMac,2.21e+003,- 

Это означает, что 5,61 часов для SSE3, 1,56 часы для SSE4.1 и 1,30 часов для AVX. Вы должны поддерживать самый высокий набор команд, который вы хотите измерить. Что касается IPP 7 и 8, вы можете загрузить версии продуктов Intel (Composer или Parallel Studio) «попробуйте купить» на сайте Intel, чтобы выполнить тесты.