LibJpegTurboVAndroid

Libjpeg-Turbo

  • Get a better performance profile of the code on ARM Cortex-A9
  • Talk to Ricardo Salveti or someone who knows firefox/chrome, especially the image path so the code path the browsers are using is one of the focus for optimizations going forward
  • Use libjpeg-turbo upstream in Debian/Ubuntu as well as for the browsers.

on a period basis: resync and validate with upstream.

Repos

  • lp:libjpeg-turbo

Functional Validation

  • make test
  • test v8 emulation
  • anything else?

Pretty Graphic

Raw Performance measurements

libturbo-jpeg Versions of Notes

  • libjpeg62 is from the Ubuntu archive
  • libjpeg-1.1.1 is from http://sourceforge.net/projects/libjpeg-turbo/ (upstream)

  • libjpeg-1.1.90-11.09 (revision 702 from upstream subversion)
  • libjpeg62 + android extensions is libjpeg as found stock in android 2.3.5 which is effectively libjpeg62 + support for 565, 8888, and a few optimizations.
  • libjpeg-1.1.90-11.09 + android extensions include (revision 702 from upstream subversion) + plus the android specific extensions for the most part forward ported. Ash support and one armv6 optimization was left out.

Panda - Cortex A9 1 Gz

  • Linaro natty
  • libjpeg-1.1.90 (revision 702 from upstream subversion
    • gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4) -O3

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb -quiet scale 1/2

All performance values in Mpixels/sec

Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      17.51   18.87   40.43
RGB     TD      4:2:0   95      3136  2352      19.84   15.53   24.99
RGB     TD      4:2:2   95      3136  2352      16.46   13.48   22.04
RGB     TD      4:4:4   95      3136  2352      13.69   10.84   21.82

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.369057 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    17.473860 Megapixels/sec
     Output bit stream:    22.227932 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           5.461366 fps
     Dest. throughput:     40.282339 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.684707 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    19.802057 Megapixels/sec
     Output bit stream:    30.609357 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           3.357013 fps
     Dest. throughput:     24.760896 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.208235 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    16.287656 Megapixels/sec
     Output bit stream:    29.000817 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           2.974744 fps
     Dest. throughput:     21.941333 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.828785 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    13.488887 Megapixels/sec
     Output bit stream:    29.860043 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           2.949043 fps
     Dest. throughput:     21.751763 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_444_Q95_full-err.ppm.

Freescale imx53 quickstart 1Gz

  • libjpeg-turbo-1.1.90-11.09 (rev 702)
    • gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4) -O3
    • using tmpfs

./tjbench /mnt/tmpfs/nightshot_iso_100.ppm 95 -rgb -quiet -scale 1/2

All performance values in Mpixels/sec
Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      19.59   18.87   48.81
RGB     TD      4:2:0   95      3136  2352      20.15   15.53   42.95
RGB     TD      4:2:2   95      3136  2352      15.71   13.48   29.99
RGB     TD      4:4:4   95      3136  2352      12.96   10.84   23.91

./tjbench /mnt/tmpfs/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.657132 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    19.598665 Megapixels/sec
     Output bit stream:    24.930827 Megabits/sec
Reference image written to /mnt/tmpfs/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           5.419202 fps
     Dest. throughput:     39.971344 Megapixels/sec
Compression error written to /mnt/tmpfs/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.726754 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    20.112188 Megapixels/sec
     Output bit stream:    31.088747 Megabits/sec
Reference image written to /mnt/tmpfs/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           3.282877 fps
     Dest. throughput:     24.214083 Megapixels/sec
Compression error written to /mnt/tmpfs/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.130375 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    15.713370 Megapixels/sec
     Output bit stream:    27.978278 Megabits/sec
Reference image written to /mnt/tmpfs/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           2.757588 fps
     Dest. throughput:     20.339614 Megapixels/sec
Compression error written to /mnt/tmpfs/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.757540 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    12.963387 Megapixels/sec
     Output bit stream:    28.696755 Megabits/sec
Reference image written to /mnt/tmpfs/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           2.911672 fps
     Dest. throughput:     21.476121 Megapixels/sec
Compression error written to /mnt/tmpfs/nightshot_iso_100_444_Q95_full-err.ppm.

Freescale imx53 quickstart 1Gz

  • libjpeg-turbo-1.1.90-11.09 (rev 702)
    • gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4) -O3

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb -quiet scale 1/2

All performance values in Mpixels/sec

Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      20.45   18.87   39.28
RGB     TD      4:2:0   95      3136  2352      20.02   15.53   23.90
RGB     TD      4:2:2   95      3136  2352      16.53   13.48   20.20
RGB     TD      4:4:4   95      3136  2352      13.46   10.84   21.26

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.783706 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    20.532262 Megapixels/sec
     Output bit stream:    26.118425 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           5.323160 fps
     Dest. throughput:     39.262948 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.756907 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    20.334592 Megapixels/sec
     Output bit stream:    31.432532 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           3.240456 fps
     Dest. throughput:     23.901189 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.244218 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    16.553065 Megapixels/sec
     Output bit stream:    29.473387 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           2.739114 fps
     Dest. throughput:     20.203357 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.826854 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    13.474639 Megapixels/sec
     Output bit stream:    29.828502 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           2.904894 fps
     Dest. throughput:     21.426129 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_444_Q95_full-err.ppm.

Freescale imx53 quickstart 1Gz

  • libjpeg62 (as shipped with ubuntu natty), tjbench backport by DRC
    • tjbench built -O3 with gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb -quiet scale 1/2

All performance values in Mpixels/sec

Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      9.545   18.87   19.19
RGB     TD      4:2:0   95      3136  2352      6.079   15.53   9.009
RGB     TD      4:2:2   95      3136  2352      5.024   13.48   7.703
RGB     TD      4:4:4   95      3136  2352      3.889   10.84   6.733

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.291978 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    9.529464 Megapixels/sec
     Output bit stream:    12.122123 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           2.603088 fps
     Dest. throughput:     19.200043 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.813531 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    6.000501 Megapixels/sec
     Output bit stream:    9.275373 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           1.221822 fps
     Dest. throughput:     9.012006 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.671166 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    4.950432 Megapixels/sec
     Output bit stream:    8.814441 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           1.044419 fps
     Dest. throughput:     7.703503 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.519360 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    3.830736 Megapixels/sec
     Output bit stream:    8.480012 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           0.913042 fps
     Dest. throughput:     6.734482 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_444_Q95_full-err.ppm.

Beagle XM - Cortex A8 1 Gz DDR 166 Mhz

  • libjpeg-1.1.90 (revision 702 from upstream subversion)
    • gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4) -O3
  • The Mhz is low due to a bug between uboot and the kernel. PERFORMANCE IS AFFECTED

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb -quiet scale 1/2

All performance values in Mpixels/sec

Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      18.36   18.87   33.50
RGB     TD      4:2:0   95      3136  2352      16.44   15.53   19.15
RGB     TD      4:2:2   95      3136  2352      14.08   13.48   16.77
RGB     TD      4:4:4   95      3136  2352      11.01   10.84   18.01

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.511846 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    18.527057 Megapixels/sec
     Output bit stream:    23.567669 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           4.531110 fps
     Dest. throughput:     33.420886 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.220092 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    16.375115 Megapixels/sec
     Output bit stream:    25.312105 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           2.597717 fps
     Dest. throughput:     19.160429 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.914253 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    14.119288 Megapixels/sec
     Output bit stream:    25.139950 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           2.275108 fps
     Dest. throughput:     16.780905 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.497863 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    11.048047 Megapixels/sec
     Output bit stream:    24.456810 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           2.447987 fps
     Dest. throughput:     18.056038 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_444_Q95_full-err.ppm.

BeagleXm - Cortex A8 600 Mhz? DDR 166 Mhz

  • libjpeg62 as packaged by Ubuntu/Linaro
    • gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4) tjbench built -O3
  • The Mhz is low due to a bug between uboot and the kernel. PERFORMANCE IS AFFECTED

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb -quiet scale 1/2

All performance values in Mpixels/sec

Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      6.418   18.87   15.71
RGB     TD      4:2:0   95      3136  2352      4.753   15.53   7.124
RGB     TD      4:2:2   95      3136  2352      3.945   13.48   6.210
RGB     TD      4:4:4   95      3136  2352      3.046   10.84   5.417

./tjbench ~/testimages/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.067524 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    7.873920 Megapixels/sec
     Output bit stream:    10.016158 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           2.083406 fps
     Dest. throughput:     15.366936 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.656167 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    4.839804 Megapixels/sec
     Output bit stream:    7.481207 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           0.965633 fps
     Dest. throughput:     7.122389 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.537445 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    3.964123 Megapixels/sec
     Output bit stream:    7.058278 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           0.842084 fps
     Dest. throughput:     6.211102 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.415437 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    3.064209 Megapixels/sec
     Output bit stream:    6.783170 Megabits/sec
Reference image written to /home/tgall/testimages/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           0.734301 fps
     Dest. throughput:     5.416111 Megapixels/sec
Compression error written to /home/tgall/testimages/nightshot_iso_100_444_Q95_full-err.ppm.

Android 2.3.5 1Gz OMAP4 Panda

  • Linaro libjpeg-turbo 1.1.90 (current as of r702) + android extensions forward ported
  • gcc 4.6 1109 -O3
  • thanks to cyang for capturing these numbers

-------------------------------libjpeg-turbo---------------------------------------

# tjbench /mnt/mytmpfs/nightshot_iso_100.ppm 95 -rgb -quiet scale 1/2

All performance values in Mpixels/sec

Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      18.37   18.87   30.20
RGB     TD      4:2:0   95      3136  2352      16.43   15.53   19.24
RGB     TD      4:2:2   95      3136  2352      13.80   13.48   16.41
RGB     TD      4:4:4   95      3136  2352      10.80   10.84   16.49

# tjbench /mnt/mytmpfs/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.489329 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    18.360975 Megapixels/sec
     Output bit stream:    23.356402 Megabits/sec
Reference image written to /mnt/mytmpfs/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           4.098732 fps
     Dest. throughput:     30.231721 Megapixels/sec
Compression error written to /mnt/mytmpfs/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           2.232394 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    16.465850 Megapixels/sec
     Output bit stream:    25.452360 Megabits/sec
Reference image written to /mnt/mytmpfs/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           2.609704 fps
     Dest. throughput:     19.248843 Megapixels/sec
Compression error written to /mnt/mytmpfs/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.867133 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    13.771734 Megapixels/sec
     Output bit stream:    24.521117 Megabits/sec
Reference image written to /mnt/mytmpfs/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           2.220380 fps
     Dest. throughput:     16.377240 Megapixels/sec
Compression error written to /mnt/mytmpfs/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.463388 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    10.793761 Megapixels/sec
     Output bit stream:    23.893903 Megabits/sec
Reference image written to /mnt/mytmpfs/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           2.230216 fps
     Dest. throughput:     16.449787 Megapixels/sec
Compression error written to /mnt/mytmpfs/nightshot_iso_100_444_Q95_full-err.ppm.

Android 2.3.5 Panda board OMAP 4 1 Gz

  • as released by android project libjpeg (based on libjpeg62 + android modifications)
  • gcc 4.6 1109 -O3
  • thanks to cyang for capturing these numbers

-------------------------------libjpeg-libjpeg62---------------------------------------

# tjbench-libjpeg62 /mnt/mytmpfs/nightshot_iso_100.ppm 95 -rgb -quiet scale 1/2

All performance values in Mpixels/sec

Bitmap  Bitmap  JPEG    JPEG    Image Image     Comp    Comp    Decomp
Format  Order   Subsamp Qual    Width Height    Perf    Ratio   Perf
RGB     TD      GRAY    95      3136  2352      8.403   18.87   27.84
RGB     TD      4:2:0   95      3136  2352      5.312   15.53   9.475
RGB     TD      4:2:2   95      3136  2352      4.415   13.48   8.513
RGB     TD      4:4:4   95      3136  2352      3.339   10.84   8.089

# tjbench-libjpeg62 /mnt/mytmpfs/nightshot_iso_100.ppm 95 -rgb

>>>>>  RGB (Top-down) <--> JPEG GRAY Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           1.141377 fps
     Output image size:    1172826 bytes
     Compression ratio:    18.866921:1
     Source throughput:    8.418654 Megapixels/sec
     Output bit stream:    10.709097 Megabits/sec
Reference image written to /data/nightshot_iso_100_GRAY_Q95.jpg
D--> Frame rate:           3.779447 fps
     Dest. throughput:     27.876715 Megapixels/sec
Compression error written to /data/nightshot_iso_100_GRAY_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:0 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.717845 fps
     Output image size:    1425172 bytes
     Compression ratio:    15.526278:1
     Source throughput:    5.294731 Megapixels/sec
     Output bit stream:    8.184419 Megabits/sec
Reference image written to /data/nightshot_iso_100_420_Q95.jpg
D--> Frame rate:           1.284163 fps
     Dest. throughput:     9.471824 Megapixels/sec
Compression error written to /data/nightshot_iso_100_420_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:2:2 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.597273 fps
     Output image size:    1641629 bytes
     Compression ratio:    13.479060:1
     Source throughput:    4.405411 Megapixels/sec
     Output bit stream:    7.844008 Megabits/sec
Reference image written to /data/nightshot_iso_100_422_Q95.jpg
D--> Frame rate:           1.154074 fps
     Dest. throughput:     8.512301 Megapixels/sec
Compression error written to /data/nightshot_iso_100_422_Q95_full-err.ppm.

>>>>>  RGB (Top-down) <--> JPEG 4:4:4 Q95  <<<<<

Image size: 3136 x 2352
C--> Frame rate:           0.452803 fps
     Output image size:    2040975 bytes
     Compression ratio:    10.841689:1
     Source throughput:    3.339817 Megapixels/sec
     Output bit stream:    7.393278 Megabits/sec
Reference image written to /data/nightshot_iso_100_444_Q95.jpg
D--> Frame rate:           1.096133 fps
     Dest. throughput:     8.084940 Megapixels/sec
Compression error written to /data/nightshot_iso_100_444_Q95_full-err.ppm.

TomGall/LibJpegTurboVAndroid (last edited 2012-06-19 14:31:04 by tom-gall)