I've got a little benchmark uncompressing 4MB of floats. On Chrome it's 80ms, so 50MBps.
On Wednesday, September 16, 2015 at 2:37:15 PM UTC-7, Alon Zakai wrote: > > I'm curious what decompression speeds you see for lzham? The compression > ratios are impressive, but I assume that's at the cost of taking longer to > unpack. > > On Tue, Sep 15, 2015 at 7:17 PM, Charles Vaughn <[email protected] > <javascript:>> wrote: > >> If you're interested in checking out LZHAM, I've got that building for >> emscripten here: https://github.com/hackcasual/lzham_codec >> >> For bananabread, I saw the following results for of the models: >> >> rw-rw-r-- 1 charles charles 385692 Sep 15 19:12 m134_hudguns.blend >> -rw-rw-r-- 1 charles charles 138954 Sep 15 19:13 m134_hudguns.blend.lz4 >> -rw-rw-r-- 1 charles charles 83108 Sep 15 19:14 >> m134_hudguns.blend.lzham >> >> On Tuesday, September 8, 2015 at 5:11:26 PM UTC-7, Alon Zakai wrote: >>> >>> incoming now has optional LZ4 compression for file packages. What this >>> lets you do is pre-compress your filesystem data, and keep it compressed in >>> memory, and only decompress chunks on demand as they are read. This means >>> that you can reduce the total amount of memory used by your application. >>> >>> LZ4 ( https://en.wikipedia.org/wiki/LZ4_%28compression_algorithm%29 ) >>> is a very fast compression algorithm. In my benchmarks it makes little >>> difference to I/O speed, and in general I/O from our in-memory filesystem >>> is fast anyhow since it's already in memory. So the downside of needing to >>> decompress seems small, I don't see much difference in BananaBread startup, >>> for example, with or without LZ4 compression. >>> >>> Of course how useful this is depends on how compressible your data is. >>> LZ4 can compress text very well, but often data in things like games is >>> already compressed, like compressed textures and audio. Still, I saw >>> 10%-25% compression on a few games I tried. >>> >>> Feedback and testing are very welcome. Some docs are at >>> >>> >>> https://github.com/kripken/emscripten/blob/71bf8ed55ed03a96a018f76bf2003acf32db3235/src/settings.js#L250 >>> >>> but basically just run emcc with -s LZ4=1 . (If you run the file >>> packager separately, you need to also pass --lz4 to it.) >>> >>> - Alon >>> >>> -- >> You received this message because you are subscribed to the Google Groups >> "emscripten-discuss" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
