utros 21.12.2011 18:09 pedobook

Сейчас поленился вспоминать БПФ и изобрёл его с нуля. С этим пришло понимание двух вещей:
1. Как и почему работает БПФ
2. Я пиздец велосипедист

1. DZhon 21.12.2011 18:14 Azoth

БПФ для лохов, посоны считают FFT.

2. DZhonDZhon /1 21.12.2011 18:14 Azoth

считают FFT в ipp.

3. utrosDZhon /1 21.12.2011 18:17 pedobook

FFT для трусов. Только ручная оптимизация, только хардкор!

4. DZhonutros /3 21.12.2011 18:18 Azoth

Не смеши мои подковы. Ты не соптимизируешь быстрее интеловской сишной IPPшечки, или поCUDAхтай на чем-нить, там вроде тоже ок считается.

5. utrosDZhon /4 21.12.2011 18:20 pedobook

У меня неебическое выражение, которое я соптимизировал на листочке, сэкономив больше 10 умножений.
А кудахтать не выйдет: это будет работать на неопределённом железе.

6. utros 21.12.2011 18:26 pedobook

Прекрасно. Из 49 умножений и 6 сложений вышло 21 умножение и 6 сложений.

7. DZhonutros /5 21.12.2011 18:26 Azoth

Тесты погоняй, кхм.

8. utrosDZhon /7 21.12.2011 18:27 pedobook

Чего с чем?

9. DZhonutros /8 21.12.2011 18:27 Azoth

своей реализации с IPP :)

10. DZhonutros /8 21.12.2011 18:28 Azoth

Да, еще есть fftw с оптимизатором на кэмле. Работает еще быстрее, но долгая предварительная подготовка. Олсо, я собаку на DSP съел, профиль работы.

11. utrosDZhon /9 21.12.2011 18:31 pedobook

Насколько ты хорошо знаком с ИПП? Оно соптимизирует что-нибудь типа
p x1 x3 x4 x5 x6 x7
+ p x2 x3 x4 x5 x6 x7
+ p x1 x2 x4 x5 x6 x7
+ p x1 x2 x3 x5 x6 x7
+ p x1 x2 x3 x4 x6 x7
+ p x1 x2 x3 x4 x5 x7
+ p x1 x2 x3 x4 x5 x6
— q x1 x2 x3 x4 x5 x6 x7
= 0
(из этого выражается x7, мне влом переписывать).

12. DZhonutros /11 21.12.2011 18:35 Azoth

Нет, оно берет сугубо массив дискретных отсчетов и выдает массив значений для каждого ЭЧК. Оптимизация Ad-Hoc уравнений — это просто узкий случай, хм.

13. utrosDZhon /12 21.12.2011 18:40 pedobook

Вот я и думаю, что ручная оптимизация тут больше подойдёт.
Я уже не очень помню быстрые алгоритмы и преобразования, а на практике так вообще не реализовывал, так что любые советы с указанием на всякие ништяки (либы и мануалы), которые мне в этом помогут, приветствуются.
И да, речь о числах порядка 2^60 — 2^100.

Do you really want to delete ?