Fast Fourier Transform

...
  • Serge
    (выпрыгивая из оффтопика прямиком в сабж) Только открыл SSE-букварь и вижу:
    AMD64 Programmer's Manual том 4 wrote:"Длинный" 64-битный режим предоставляет SSE-программам четыре существенных преимущества:
    1) доступ к восьми дополнительным XMM регистрам;
    2) доступ к восьми дополнительным 64-битным РОНам;
    3) 64-битное виртуальное адресное пространство, и
    4) RIP-адресацию.
    Не знаю, будет ли двухголовая "Колибри32 + SSE_64" большим геморроем, чем просто "Колибри64"
    Но сейчас все равно не до этого.
  • Стопроцентно будет. Для х64 нужны свои обработчики прерываний/исключений и переключатель контекстов. Но такой гибридный вариант интересен для числодробилок. На загрузочном ядре работает х32, а на остальных ядрах задачи х64 в пакетном режиме + минимальный гипервизор для обслуживания ввода-вывода. Это конечно совсем не SMP, но намного проще и понятней чем CPU+GPU. Мне даже интересно стало.
  • бывают же такие совпадения:

    12 октября Вилле добавил Фурье-серсис в ядро MeOS64

    Code: Select all

    SYSTEM CALL 150
    From version 0.94, an 'Audio Processing' system call was introduced in Menuet 64. The following functions are available, and may be expanded later:
       1. Complex to complex inplace FFT (Radix-4 decimation in time)
       2. Sample format and wave format converter
       3. FFT convolution kernel (equalizer)
       4. SINC resampling kernel
    
    вместе с БПФ в ядро забили SSE-упаковку данных и свертку функций (convolution).
    невероятно, но факт: спектр-эквалайзинг и сшивка фреймов тоже будут выполняться ядром (?)
    Евангелие от Иоанна: стих 1

    Code: Select all

    ; В начале было Слово:
    B32:        mov     ax, os_stack       ; Selector for os
    [/size]
  • Мне так кажется он по прежнему идет путем, которым шло первоначальное развитие Linux. От которого уже отказались в сторону модульности.
  • Там и 3D есть, чего мелочиться.
  • Залил на SVN.
    programs/other/fft
  • Is it possible to use this code for creating a spectrum analyser wich uses sound card input?
    Eg, for measuring amplifiers and other audio circuits?

    I believe it would be a very interesting addition to the KolibriOS project for uses by hobbyists..

    Many similar programs are available for windows, but mostly not for free.
    (RMAA: http://audio.rightmark.org/products/rmaa.shtml being very popular for its complete set of analysis tools)
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • You mean something like Audacity?
  • not really, I mean realtime FFT.
    To create a frequency plot of the incoming audio signal.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • hidnplayr
    Yes, sure -- realtime FFT is what this stuff is all about.
    I currently use it for signal/noise filtration (digital filters) and RT image recognition (2D convolution for technical vision).
  • На больших массивах (1М точек, под виндой) FHT бьет по производительности стандарные фурье-библиотеки в 5-10 раз. Интересно, что исходный С-код (MS VS9), оптимизированный под SSE2, работает значительно медленнее, чем ассемблерный код с FPU-инструкциями.

    при этом FHT требует вдвое меньше памяти по сравнению с FFT (все данные - вещественные) и гораздо проще цепляется к конвейеру ввода/анализа данных.
  • Who is online

    Users browsing this forum: No registered users and 6 guests