Version 1.2.0 has been released: real FFT, FFT plan caching, build times reduced

New features and notable changes:

  • Real-to-complex and complex-to-real FFT
  • FFT plan caching
  • Cross-correlation and auto-correlation
  • Initial support for GCC and other compilers
  • Compile times have been reduced by 10 times in Debug mode
  • New function to partition expression for parallel execution
  • Faster implementations for many functions
  • Various small improvements and fixes

Continue reading Version 1.2.0 has been released: real FFT, FFT plan caching, build times reduced

Fast Fourier Transform in C++ using KFR. Part 1

In this article I’ll show you how to use Fast Fourier Transform in Digital Signal Processing and how to apply forward and inverse FFT on complex and real data using the KFR framework.

Introduction

Fast Fourier Transform (FFT) can be used to perform:

  • Convolution (including convolution reverberation)
  • Cross-correlation and auto-correlation
  • Applying large FIR filters
  • Sample rate conversion
  • Spectrum visualization
  • Large integer multiplication
  • and many other algorithms

Often FFT is the most efficient way to perform each of these algorithms.

Moreover, KFR has one of the most efficient FFT implementation, so you can get a great performance boost of your DSP applications using KFR’s FFT for all of these algorithms.

Continue reading Fast Fourier Transform in C++ using KFR. Part 1

How C++14 and C++17 help to write faster (and better) code. Real world examples

Writing high performance code is always a difficult task. Pure algorithms are not always a good fit for the real world architectures.
Once having begun to speed up all these pure algorithms, we quickly find that some implementation is pretty fast on one architecture, but terrible slow on another while second implementation outperform the first one in some contexts losing speed in all the rest.

Continue reading How C++14 and C++17 help to write faster (and better) code. Real world examples