On Thu, Feb 19, 2009 at 1:22 PM, C. Scott Ananian <[email protected]> wrote:

> I'd suggest just uncompressing the various image files and re-timing
> as a start.  The initial implementation was uncompressed, but people
> complained about space usage on the emulator images (which are
> uncompressed).  The current code supports both uncompressed and
> compressed image formats.  For uncompressed images, putting the bits
> on the screen is an mmap and memcpy, so I can't imagine any
> implementation being faster than that (it's possible, of course, that
> what's stealing CPU is the shell's invocation of the client program;
> recoding just that little part in C should be trivial, since it does
> nothing but write to a socket IIRC.)


I implemented a RLE compressor specifically for these 16bit image files the
last time this question came up.  This can certainly be faster than memcpy
since we are talking memory performance.

GZip+RLE also beats plain GZip on size, again due to the contents of the
images.

http://wadeb.com/rle.c
http://wadeb.com/unrle.c

-Wade
_______________________________________________
Devel mailing list
[email protected]
http://lists.laptop.org/listinfo/devel

Reply via email to