Wednesday, September 14, 2016

JPEG2000 Decoding Performance

The OpenJPEG project just integrated a PR which added support for decoding across multiple threads.  I decided to do a quick performance comparison to see where things are:

3063x4664x16 bit grayscale JPEG2000 Image (MG1_J2KR) from dclunie’s compression samples here:


On my MacBook Pro (Retina, 15-inch Mid 2014 2.8 GHz Intel Core i7 macOS Sierra):

Kakadu (v7_8-01480C) decompress with 8 threads - .345 seconds
Kakadu (v7_8-01480C) decompress with 1 thread – 1.7862 seconds
OpenJPEG (master) decompress with 1 thread – 4.165 seconds
OpenJPEG (master) decompress with 8 threads – 2.113 seconds
OpenJPEG (2.1.1) decompress with 1 thread – 4.847 seconds
Grok (master) decompress with 1 thread– 2.810 seconds

Quick Summary:
*) Kakadu is still king.  They have a new speedpack add on that supposedly improves decode performance 50%
*) Grok has made some strong performance improvements over OpenJPEG
*) The OpenJPEG multi-core work is a fantastic enhancement

I also ran numbers for cornerstone which I will be presenting at the OHIF Community meeting Sept 28 which everyone is invited to attend:


Chris

No comments:

Post a Comment