|
|
  |
FFT, Нужен чертовски быстрый БПФ на Си |
|
|
|
Jun 30 2011, 14:30
|
Участник

Группа: Участник
Сообщений: 43
Регистрация: 13-12-10
Пользователь №: 61 586

|
Всем здравствуйте. В интернете валом, но нужно проверенный с нужными характеристиками. Есть у кого легковесный и быстрый исходник? Или покажите пожалуйста пальцем где валяется. Всем спасибо!
|
|
|
|
|
Jun 30 2011, 20:25
|
Частый гость
 
Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531

|
Цитата(XGoblinX @ Jun 30 2011, 18:30)  Есть у кого легковесный и быстрый исходник? Или покажите пожалуйста пальцем где валяется. А нужные характеристики - это какие? Всем интересно. А числа в исходном массиве в каком формате? А сколько их? А процессор какой? Скорость и легковесность никак не дружат. Чем длиннее программа тем быстрее можно сделать. В целых числах побыстрее будет. И адаптированная к процессору тоже быстрее. Самая быстрая программа для чисел с плавающей точкой расположена тут http://www.fftw.org/.(очень длинная) Вот самые легковесные программы по алгоритму Кули-Тьюки(Cooley-Tookey) с которых большинство начинало. http://paulbourke.net/miscellaneous/dft/http://ru.wikipedia.org/wiki/%D0%91%D1%8B%...%80%D1%8C%D0%B5Честно говоря opensource усыхает с каждым годом RealFFT без комплексных переменных вообще не нашел.
--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
|
|
|
|
|
Jul 4 2011, 13:31
|
Частый гость
 
Группа: Свой
Сообщений: 85
Регистрация: 4-10-06
Из: Ukraine
Пользователь №: 20 949

|
Действительно, а какие Вам нужны характеристики? Пока могу посоветовать библиотеку ALGLIB. ALGLIB - это кросс-платформенная библиотека численного анализа, поддерживающая несколько языков программирования (C++, C#, Pascal, VBA) и несколько операционных систем (Windows, Linux, Solaris). Возможности ALGLIB включают в себя:
* Линейную алгебру (прямые алгоритмы, EVD, SVD) * Решение систем уравнений (линейных и нелинейных) * Интерполяцию * Оптимизацию * FFT * Численное интегрирование * Линейную и нелинейную аппроксимацию по МНК * Решение обыкновенных ДУ * Вычисление специальных функций * Статистику (описательную статистику и проверку гипотез) * Анализ данных - классификацию, регрессию, в т.ч. с использованием нейронных сетей * Реализацию алгоритмов линейной алгебры, интерполяции и т.д. в арифметике высокой точности (с использованием MPFR)
|
|
|
|
|
Jul 12 2011, 17:19
|

Шаман
     
Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221

|
Цитата(Vladimir_T @ Jul 12 2011, 19:17)  Реализация на ассемблере АРМ-процессора. В своё время интересуясь подобной темой встречал ассемблерные реализации, но для DSP, поскольку компиляторы для последних неважно реализуют алгоритмы на С (это не моё мнение, пришлось поверить). Что же касается ARM, то отличия ассемблерной реализации от сгенерированной компилятором (современным) как по скорости, так и по размеру кода не очень велики, по различным оценкам - не более 10%. Если в Вашем случае это критично, то Вы, скорее всего ошиблись платформой.
|
|
|
|
|
Jul 12 2011, 19:13
|
Частый гость
 
Группа: Свой
Сообщений: 85
Регистрация: 4-10-06
Из: Ukraine
Пользователь №: 20 949

|
Цитата(Vladimir_T @ Jul 12 2011, 19:17)  Реализация на ассемблере АРМ-процессора. Ассемблер знать необходимо, но нужно применять его с умом. Цитата(IgorKossak @ Jul 12 2011, 20:19)  ... ассемблерной реализации от сгенерированной компилятором (современным) как по скорости, так и по размеру кода не очень велики, по различным оценкам - не более 10%. Покажите такие оценки (только для реальных проектов, а не синтетические тесты). Сколько не пробовал у меня реализация на ассемблере в 2 и более раз получалась лучше (другое дело затраты на реализацию такой программы)
|
|
|
|
|
Jul 28 2011, 04:56
|
Частый гость
 
Группа: Участник
Сообщений: 184
Регистрация: 11-09-08
Пользователь №: 40 121

|
Цитата(XGoblinX @ Jun 30 2011, 20:30)  Всем здравствуйте. В интернете валом, но нужно проверенный с нужными характеристиками. Есть у кого легковесный и быстрый исходник? Или покажите пожалуйста пальцем где валяется. Всем спасибо! Есть на си, работает на меге 32 на 16 мегагерцах. Проверен, отлажен. РАбочий. Могу проект в иаре кинуть вам на почту.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|