2015-03-06 3 views
0

Это написано, что библиотека CUFFT поддерживает алгоритмы, которые высокодисперсный оптимизированные для ввода размеров могут быть записаны в на следующих формах: 2^а Х 3^б Х 5^с Х 7^д.о вводе CUFFT размеры

Как они могли это сделать?

Насколько мне известно, БПФ должен обеспечить наилучшую производительность только для 2^a Размер входного сигнала.

ответ

0

Это означает, что размеры ввода с основными коэффициентами, превышающими 7, будут медленнее.

0

Алгоритм Кули-Туки может работать на множестве длин DFT, который может быть выражен как N = N_1 * N_2. Алгоритм рекурсивно выражает ДПФ длины N в N_1 меньших ДПФ длины N_2.

Как вы заметили, самым быстрым, как правило, является факторизация radix-2, которая рекурсивно разбивает ДПФ длины N на 2 меньших ДПФ длины N/2, работающих в O (NlogN).

Однако фактическая производительность будет зависеть от оборудования и реализации. Например, если мы рассматриваем cuFFT с размером деформации нити 32, тогда оптимальные DFT, имеющие длину несколько кратных 32, будут оптимальными (обратите внимание: просто пример, я не знаю о фактических оптимизации, которые существуют в капюшон cuFFT.)

Короткий ответ: базовый код оптимизирован для любой простой факторизации до 7 на основе алгоритма radix-n Cooley-Tukey.

http://mathworld.wolfram.com/FastFourierTransform.html

https://en.wikipedia.org/wiki/Cooley-Tukey_FFT_algorithm

Смежные вопросы