Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: FFT
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Программирование
XGoblinX
Всем здравствуйте.
В интернете валом, но нужно проверенный с нужными характеристиками.
Есть у кого легковесный и быстрый исходник?
Или покажите пожалуйста пальцем где валяется.
Всем спасибо!
SPACUM
Цитата(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 без комплексных переменных вообще не нашел.
soldat_shveyk
Не знаю на счет исходника...Асемблерный текст можно вытащить в принципе.
Но очень быстрый БПФ есть в Intel IPP (и бесплатный).
lux
Действительно, а какие Вам нужны характеристики?
Пока могу посоветовать библиотеку ALGLIB.
ALGLIB - это кросс-платформенная библиотека численного анализа, поддерживающая несколько языков программирования (C++, C#, Pascal, VBA) и несколько операционных систем (Windows, Linux, Solaris). Возможности ALGLIB включают в себя:

* Линейную алгебру (прямые алгоритмы, EVD, SVD)
* Решение систем уравнений (линейных и нелинейных)
* Интерполяцию
* Оптимизацию
* FFT
* Численное интегрирование
* Линейную и нелинейную аппроксимацию по МНК
* Решение обыкновенных ДУ
* Вычисление специальных функций
* Статистику (описательную статистику и проверку гипотез)
* Анализ данных - классификацию, регрессию, в т.ч. с использованием нейронных сетей
* Реализацию алгоритмов линейной алгебры, интерполяции и т.д. в арифметике высокой точности (с использованием MPFR)
sasamy
Цитата(SPACUM @ Jul 1 2011, 00:25) *
Самая быстрая программа для чисел с плавающей точкой расположена тут http://www.fftw.org/.(очень длинная)


Это не совсем так sm.gif
http://cr.yp.to/djbfft/faq.html
alex_os
Цитата(sasamy @ Jul 4 2011, 22:25) *
Это не совсем так sm.gif
http://cr.yp.to/djbfft/faq.html

Гм. страничка, похоже, 10ти летней давности и процессоры которые канули в Лету sm.gif.
Vladimir_T
Здравствуйте, уважаемые коллеги, вижу в данной теме идет обсуждение вопросов ЦОС, потому хотел и свой вопрос вставить: подскажите, где-бы можно посмотреть реализацию фильтров БИХ. КИХ, режекторных особенно для АРМ-процессоров. Конечно мужна фильтрация сигнала в реальном времени, с возможностью установки крутизны АЧХ и конечно важно скорость работы алгоритма. Заранее благодарен.
lux
Что Вы понимаете под реализацией для АРМ?
Vladimir_T
Реализация на ассемблере АРМ-процессора.
IgorKossak
Цитата(Vladimir_T @ Jul 12 2011, 19:17) *
Реализация на ассемблере АРМ-процессора.

В своё время интересуясь подобной темой встречал ассемблерные реализации, но для DSP, поскольку компиляторы для последних неважно реализуют алгоритмы на С (это не моё мнение, пришлось поверить). Что же касается ARM, то отличия ассемблерной реализации от сгенерированной компилятором (современным) как по скорости, так и по размеру кода не очень велики, по различным оценкам - не более 10%. Если в Вашем случае это критично, то Вы, скорее всего ошиблись платформой.
lux
Цитата(Vladimir_T @ Jul 12 2011, 19:17) *
Реализация на ассемблере АРМ-процессора.

Ассемблер знать необходимо, но нужно применять его с умом.

Цитата(IgorKossak @ Jul 12 2011, 20:19) *
... ассемблерной реализации от сгенерированной компилятором (современным) как по скорости, так и по размеру кода не очень велики, по различным оценкам - не более 10%.

Покажите такие оценки (только для реальных проектов, а не синтетические тесты). Сколько не пробовал у меня реализация на ассемблере в 2 и более раз получалась лучше (другое дело затраты на реализацию такой программы)
Prinz
Цитата(XGoblinX @ Jun 30 2011, 20:30) *
Всем здравствуйте.
В интернете валом, но нужно проверенный с нужными характеристиками.
Есть у кого легковесный и быстрый исходник?
Или покажите пожалуйста пальцем где валяется.
Всем спасибо!


Есть на си, работает на меге 32 на 16 мегагерцах.
Проверен, отлажен. РАбочий. Могу проект в иаре кинуть вам на почту.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.