On 01/03/2013 10:29 PM, Douglas Crosher wrote:
It might only make a performance difference. There might be a new container format that simply loads faster on average.
I am positive that LZMA2 is quite suited for JS in terms of performance (or at least not worse than other compressors). When we developed the ZIM file format we had small devices with only little ressources in mind, the first users of openZIM were small gadgets like the Ben NanoNote. LZMA has the disadvantage that it is quite expensive in compressing but gets better compression ration than others. On the other hand decompression is quite cheap compared with others, so it was the perfect choice for these small platforms.
There was a discussion whether we could go a step further for devices with very limited memory and not decompress and cache a whole cluster when accessing it but just use the parts from the decompression stream we need and stop reading once we have all data needed, forgetting everything else. I think that has been implemented in zimlib.
/Manuel