v1.2 is now attached. It should be markedly faster.
Code:
parallel (79.3 MB, 1047 files) newmusic_piano3.ogg (2.5 MB)
tool | e/time | ratio (size) | mem | e/time | ratio (size) | mem
1.2 -1 | 1.63 s | 90.4% (75,274kB) | 15M | 0.42 s | 83.3% (2,221kB) | 7M
-2 | 1.85 s | 89.2% (74,276kB) | 15M | 0.77 s | 79.4% (2,118kB) | 7M
-3 | 1.97 s | 89.0% (74,052kB) | 17M | 0.82 s | 79.2% (2,113kB) | 8M
-4 | 2.06 s | 88.6% (73,761kB) | 17M | 0.90 s | 78.9% (2,106kB) | 8M
-5 | 4.24 s | 88.3% (73,524kB) | 17M | 2.78 s | 78.6% (2,095kB) | 9M
-6 | 6.31 s | 88.2% (73,438kB) | 17M | 4.55 s | 78.3% (2,089kB) | 10M
-7 | 8.39 s | 88.2% (73,435kB) | 17M | 6.25 s | 78.3% (2,089kB) | 11M
-8 | 10.65 s | 88.2% (73,428kB) | 17M | 8.00 s | 78.3% (2,089kB) | 11M
-9 | 15.11 s | 88.2% (73,428kB) | 17M | 11.73 s | 78.3% (2,089kB) | 11M
1.1 -1 | 0.93 s | 90.4% (75,270kB) | 11M | 0.45 s | 83.3% (2,221kB) | 6M
-2 | 1.30 s | 89.2% (74,272kB) | 11M | 0.84 s | 79.4% (2,118kB) | 7M
-3 | 1.41 s | 88.9% (74,048kB) | 13M | 0.90 s | 79.2% (2,113kB) | 8M
-4 | 1.64 s | 88.6% (73,757kB) | 13M | 0.96 s | 78.9% (2,106kB) | 8M
-5 | 4.39 s | 88.3% (73,520kB) | 13M | 3.01 s | 78.6% (2,095kB) | 10M
-6 | 6.89 s | 88.2% (73,434kB) | 13M | 5.00 s | 78.3% (2,089kB) | 10M
-7 | 9.44 s | 88.2% (73,431kB) | 13M | 6.84 s | 78.3% (2,089kB) | 10M
-8 | 11.92 s | 88.2% (73,424kB) | 13M | 8.56 s | 78.3% (2,089kB) | 10M
-9 | 16.75 s | 88.2% (73,424kB) | 13M | 12.22 s | 78.3% (2,089kB) | 10M
1.0 -1 | 0.92 s | 90.4% (75,238kB) | 37M | 0.43 s | 83.3% (2,221kB) | 12M
-2 | 1.25 s | 89.2% (74,241kB) | 37M | 0.86 s | 79.4% (2,118kB) | 12M
-3 | 1.40 s | 88.9% (74,017kB) | 38M | 0.91 s | 79.2% (2,113kB) | 13M
-4 | 1.63 s | 88.6% (73,726kB) | 38M | 1.00 s | 78.9% (2,105kB) | 13M
-5 | 5.68 s | 88.3% (73,489kB) | 46M | 3.13 s | 78.6% (2,095kB) | 46M
-6 | 9.66 s | 88.2% (73,404kB) | 47M | 5.07 s | 78.3% (2,089kB) | 46M
-7 | 13.30 s | 88.2% (73,401kB) | 47M | 7.00 s | 78.3% (2,089kB) | 46M
-8 | 16.91 s | 88.2% (73,394kB) | 47M | 9.02 s | 78.3% (2,089kB) | 46M
-9 | 24.04 s | 88.2% (73,394kB) | 48M | 13.08 s | 78.3% (2,089kB) | 48M
Mean of 5 on AMD Ryzen 9 5950X. v1.2: calls fsync() and FlushFileBuffers() for
more durable I/O handling, explaining the minor parallel regression.