Larry’s Personal & Tech ramblings

Just another WordPress.com weblog

New performance figures for the JPEG codec on ARM

I recently began looking at the encoding side of my JPEG code to find ways of improving the performance. The biggest improvements came from new ideas for the JPEG compression algorithm, while others came from rewriting the C code in optimized ARM assembly language. The tests were conducted on a T-Mobile Shadow (OMAP 850, 200Mhz):

Compress 240×320 RGB24 image into JPEG with color subsampling and low output quality (10K bytes output): 63ms
Decompress the 240×320 JPEG file (10K) back into RGB565: 29ms

This speed is suitable for doing MJPEG video on handheld devices.

The file generated from the compressor is here:
240×320 test image

The assembly language code was written to use the ARMv5 instruction set. Use of ARMv6 instructions could improve performance further.

January 14, 2009 - Posted by bitbank | arm, arm9, assembly language, benchmark, jpeg, omap, optimization, performance, pocket pc, smartphone, wince | | 1 Comment

1 Comment »

  1. Love your site!

    ______________________________
    Unlimited 24/7 Movie Downloads!!! No time limits, no bandwidth limits, no content limits!!!

    Comment by Kai | March 3, 2009 | Reply


Leave a comment