Original post follows :
Oodle is coming soon (in 2.4.2) to the Nintendo Switch (NX), an ARM A57 device.
Quick performance test vs. the software zlib (1.2.8) provided in the Nintendo SDK :
ADD : Update with new numbers from Oodle 2.6.0 pre-release (11-20-2017) :
file : compressor : ratio : decode speed
lzt99 : nn_deflate : 1.883 to 1 : 74.750 MB/s
lzt99 : Kraken -z8 : 2.615 to 1 : 275.75 mb/s (threadphased 470.13 mb/s)
lzt99 : Kraken -z6 : 2.527 to 1 : 289.06 mb/s
lzt99 : Hydra 300 z6: 2.571 to 1 : 335.68 mb/s
lzt99 : Hydra 800 z6: 2.441 to 1 : 458.66 mb/s
lzt99 : Mermaid -z6 : 2.363 to 1 : 556.85 mb/s
lzt99 : Selkie -z6 : 1.939 to 1 : 988.04 mb/s
Kraken (z6) is 3.86X faster to decode than zlib, with way more compression (35% more).
Selkie gets a little more compression than zlib and is 13.35 X faster to decode.
All tests single threaded, 64-bit. (except "threadphased" which uses 2 threads to decode)
I've included Hydra at a space-speed tradeoff value between Kraken & Mermaid (sstb=300). It's a bit subtle, perhaps you can see it best in the loglog chart (below), but Hydra here is not just interpolating between Kraken & Mermaid performance, it's actually beating both of them in a Pareto frontier sense.
OLD :
This post was originally done with a pre-release version of Oodle 2.4.2 when we had just gotten Oodle running on the NX. There was still a lot of work to be done to get it running really properly.
lzt99 : nn_deflate : 1.883 to 1 : 74.750 MB/s lzt99 : LZNA : 2.723 to 1 : 24.886 MB/s lzt99 : Kraken : 2.549 to 1 : 238.881 MB/s lzt99 : Hydra 300 : 2.519 to 1 : 274.433 MB/s lzt99 : Mermaid : 2.393 to 1 : 328.930 MB/s lzt99 : Selkie : 1.992 to 1 : 660.859 MB/s
No comments:
Post a Comment