PhastFT
PhastFT copied to clipboard
Update accuracy of memory usage for `f32`/`f64` in readme
@Shnatsel
Given the results for f32
and f64
memory usage provided by a third party benchmark repo, should we consider updating the "2x lower memory usage" claim in the readme?
To make it easier to read the memory usage data, I took out the other columns to do with timing for both tables:
f32
Sequence length | rustfft memory |
phastft memory |
---|---|---|
8 | 368 B | 32 B |
16 | 624 B | 96 B |
32 | 1.152 KB | 224 B |
64 | 3.808 KB | 480 B |
128 | 6.368 KB | 992 B |
256 | 11.48 KB | 2.016 KB |
512 | 21.72 KB | 4.064 KB |
1024 | 42.20 KB | 8.160 KB |
2048 | 83.16 KB | 16.35 KB |
4096 | 165.0 KB | 32.73 KB |
8192 | 328.9 KB | 65.50 KB |
16384 | 656.6 KB | 131.0 KB |
32768 | 1.311 MB | 262.1 KB |
65536 | 2.622 MB | 524.2 KB |
131072 | 5.244 MB | 1.048 MB |
262144 | 10.48 MB | 2.097 MB |
524288 | 20.97 MB | 4.194 MB |
1048576 | 41.94 MB | 8.388 MB |
2097152 | 83.88 MB | 16.77 MB |
4194304 | 167.7 MB | 33.55 MB |
8388608 | 335.5 MB | 67.10 MB |
f64
Sequence length | rustfft memory |
phastft memory |
---|---|---|
8 | 320 B | 64 B |
16 | 480 B | 192 B |
32 | 816 B | 448 B |
64 | 3.968 KB | 960 B |
128 | 7.040 KB | 1.984 KB |
256 | 13.18 KB | 4.032 KB |
512 | 25.47 KB | 8.128 KB |
1024 | 50.04 KB | 16.32 KB |
2048 | 99.20 KB | 32.70 KB |
4096 | 197.5 KB | 65.47 KB |
8192 | 394.1 KB | 131.0 KB |
16384 | 787.3 KB | 262.0 KB |
32768 | 1.573 MB | 524.2 KB |
65536 | 3.146 MB | 1.048 MB |
131072 | 6.292 MB | 2.097 MB |
262144 | 12.58 MB | 4.194 MB |
524288 | 25.16 MB | 8.388 MB |
1048576 | 50.33 MB | 16.77 MB |
2097152 | 100.6 MB | 33.55 MB |
4194304 | 201.3 MB | 67.10 MB |
8388608 | 402.6 MB | 134.2 MB |
Just eyeballing the results, it seems PhastFT
has ≈ 5x lower memory usage for f64 ≈ 3x lower memory usage for f64. Maybe it would be better compute the ratio of rustfft
to phastft
memory usage for all sequence sizes and then take the average/median/min? Perhaps we should re-run the benchmarks on the original benchmark machine before anything.
Curious to hear your thoughts!