lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


It was thus said that the Great Paige DePol once stated:
> > Sean Conner <sean@conman.org> wrote:
> >>  For work, an application I wrote [1] embedded Lua plus a large number of
> >> modules required for it to work.  The modules written in Lua are
> >> pre-compiled; in some cases they are smaller than the source files; other
> >> times not so.  In any case, these are further compressed using zlib before
> >> being embedded in the executable. 
> 
> Wouldn't overall memory available be a concern as well with a compression
> library? 

  In my case, not really.  I only started doing the compression when an
internal tool (constructed along similar lines ad the application I
mentioned) became ludicrously large because of one module (containing
thousands of names [2]).  Compression brought that down to merely largish
size [3].

> I am guessing for embedded systems the decompression happens as
> a stream, so the only memory allocations are for the decompression engine
> itself and the final decompressed file?

  Yes, but the "embedded system" I'm programming for is a server with gigs
of RAM and an insane number of (slowish) cores [4].

> > Sean Conner <sean@conman.org> wrote:
> >>  I finally have some time, so I thought I might check the sizes of Lua
> >> source code, compressed Lua source code [1], compiled Lua code and
> >> compressed compiled Lua code, for both 32 bit and 64 bit systems...
> 
> Thanks for doing those comparisons, Sean, it was enlightening. 

  You're welcome.

  -spc

[1]	Footnote not included here

[2]	Yes, we have need to generate names of people when testing.

[3]	I didn't want to have to install additional data files to make
	testing easier.  Also, I didn't want to have to install anything, to
	make testing easier on systems we had limited access to.

[4]	64-core 64-bit SPARC architecture running about a gigahertz or so. A
	bit sluggish compared to more mondern hardware but it handles heavy
	loads like you wouldn't believe.

	At least, I *think* it has 64 cores.  I know it has more than what
	you can normally get on a desktop.