Benchmark results - windytan/redsea GitHub Wiki
CPU usage
These results were obtained by running a batch of test MPX recordings through redsea at a real-time speed on different platforms.
Computer | CPU | Redsea version | % CPU |
---|---|---|---|
Raspberry Pi | 700 MHz ARMv6 | 0.17.0 | 40–45 % |
Raspberry Pi 3B | ARMv7 | 1.0-SNAPSHOT | 5–11 % |
2013 Macbook Pro | 2.8 GHz i7 | 0.17.0 | 0.6 % |
2021 Macbook Pro | M1 Pro | 1.0-SNAPSHOT | 1.1 % |
Noise performance
We measured how redsea 1.0-SNAPSHOT does under noisy conditions on different platforms:
- took a recording of a clean MPX and added varying amounts of white rand() noise to it.
- calculated the power coming through the narrow-band RDS shaping filter (signal + noise) and compared it with another filter running 5 kHz higher (noise only, same bandwidth).
- calculated the signal-to-noise ratio estimate as $\mathit{SNR_{dB}} = 10 \times log_{10}\frac{P_{signal with noise} - P_{noise only}}{P_{noise only}} $.
Here, the percentage of correct syndromes received (before error correction) is plotted against the subcarrier's SNR estimate.
On some platforms like armv7
, liquid-dsp uses --fast-math
that changes how sine and cosine are calculated. This explains why noise affects reception differently on different platforms.
See Error detection and correction for more discussion and measurements.