Skip to content

Benchmark results

Recorded 2026-11-11. Historical measurement. Not a measurement of the latest release. Run status: completed.

Which implementation takes less time? Compare every workload with libjpeg-turbo, the baseline. Lower time is better.

image-slash-star12 faster · 22 slowervs libjpeg-turbo · 0 equal · 6 not comparable

Observed median comparisons, not an overall score. Timing-only rows do not establish equal output; small differences may be noise.

Shorter bars = less time within a row. Click a column heading to sort. Scroll the table horizontally on small screens.

Median time per workload; speed factors are relative to the baseline in the same row.
BaselineMedian · vs baselineLowest medianAmong comparable implementations
EncodeEncode JPEG8 × 8 · RGB · quality 85 · 4:2:05.96 µsBaselinelibjpeg-turbo. Output hash and size match.2.88 µs2.07× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
EncodeEncode JPEG32 × 32 · RGB · quality 85 · 4:2:08.58 µsBaselinelibjpeg-turbo. Output hash and size match.5.25 µs1.63× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
EncodeEncode JPEG63 × 65 · RGB · quality 85 · 4:2:021.9 µsBaselinelibjpeg-turbo. Output hash and size match.19.9 µs1.1× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 10 · 4:2:035 µsBaselinelibjpeg-turbo. Output hash and size match.47.7 µs1.36× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 50 · 4:2:048.4 µsBaselinelibjpeg-turbo. Output hash and size match.63 µs1.3× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 85 · 4:2:068.3 µsBaselinelibjpeg-turbo. Output hash and size match.81.8 µs1.2× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 100 · 4:2:082.7 µsBaselinelibjpeg-turbo. Output hash and size match.101 µs1.22× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG512 × 512 · RGB · quality 10 · 4:2:0554 µsBaselinelibjpeg-turbo. Output hash and size match.1.03 ms1.85× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG512 × 512 · RGB · quality 85 · 4:2:01.1 msBaselinelibjpeg-turbo. Output hash and size match.1.92 ms1.74× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG1024 × 1024 · RGB · quality 85 · 4:2:04.52 msBaselinelibjpeg-turbo. Output hash and size match.7.38 ms1.63× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 85 · 4:2:295.2 µsBaselinelibjpeg-turbo. Output hash and size match.137 µs1.44× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 85 · 4:4:4143 µsBaselinelibjpeg-turbo. Output hash and size match.213 µs1.49× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 85 · 4:2:0 · optimized220 µsBaselinelibjpeg-turbo. Output hash and size match.212 µs1.04× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 85 · 4:2:0 · progressive691 µsBaselinelibjpeg-turbo. Output hash and size match.684 µs1.01× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
EncodeEncode JPEG128 × 128 · RGB · quality 85 · 4:2:0 · restart every 4 rows67.7 µsBaselinelibjpeg-turbo. Output hash and size match.80.2 µs1.19× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
EncodeEncode JPEG128 × 128 · GRAY · quality 8554.2 µsBaselinelibjpeg-turbo. Output differs · speed comparison withheld.43.5 µsNot comparableimage-slash-star. Output differs · speed comparison withheld.Not comparableOutput differs · speed comparison withheld
EncodeEncode JPEG512 × 512 · GRAY · quality 85861 µsBaselinelibjpeg-turbo. Output differs · speed comparison withheld.998 µsNot comparableimage-slash-star. Output differs · speed comparison withheld.Not comparableOutput differs · speed comparison withheld
EncodeEncode JPEG128 × 128 · CMYK · quality 85185 µsBaselinelibjpeg-turbo. Output differs · speed comparison withheld.296 µsNot comparableimage-slash-star. Output differs · speed comparison withheld.Not comparableOutput differs · speed comparison withheld
EncodeEncode JPEG512 × 512 · CMYK · quality 853.08 msBaselinelibjpeg-turbo. Output differs · speed comparison withheld.4.97 msNot comparableimage-slash-star. Output differs · speed comparison withheld.Not comparableOutput differs · speed comparison withheld
EncodeEncode JPEG127 × 129 · RGB · quality 85 · 4:2:072.9 µsBaselinelibjpeg-turbo. Output hash and size match.92.4 µs1.27× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG8 × 8 · RGB · quality 85 · 4:2:04.83 µsBaselinelibjpeg-turbo. Output hash and size match.1.83 µs2.64× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
DecodeDecode JPEG32 × 32 · RGB · quality 85 · 4:2:011.5 µsBaselinelibjpeg-turbo. Output hash and size match.7.71 µs1.49× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
DecodeDecode JPEG63 × 65 · RGB · quality 85 · 4:2:035.5 µsBaselinelibjpeg-turbo. Output hash and size match.29.5 µs1.2× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 10 · 4:2:032.8 µsBaselinelibjpeg-turbo. Output hash and size match.43.2 µs1.32× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 50 · 4:2:076 µsBaselinelibjpeg-turbo. Output hash and size match.73.7 µs1.03× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 85 · 4:2:0117 µsBaselinelibjpeg-turbo. Output hash and size match.107 µs1.09× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 100 · 4:2:0156 µsBaselinelibjpeg-turbo. Output hash and size match.184 µs1.18× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG512 × 512 · RGB · quality 10 · 4:2:0538 µsBaselinelibjpeg-turbo. Output hash and size match.726 µs1.35× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG512 × 512 · RGB · quality 85 · 4:2:01.92 msBaselinelibjpeg-turbo. Output hash and size match.2.06 ms1.07× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG1024 × 1024 · RGB · quality 85 · 4:2:07.89 msBaselinelibjpeg-turbo. Output hash and size match.9.09 ms1.15× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 85 · 4:2:2156 µsBaselinelibjpeg-turbo. Output hash and size match.160 µs1.02× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 85 · 4:4:4236 µsBaselinelibjpeg-turbo. Output hash and size match.271 µs1.15× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 85 · 4:2:0 · optimized113 µsBaselinelibjpeg-turbo. Output hash and size match.149 µs1.32× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 85 · 4:2:0 · progressive311 µsBaselinelibjpeg-turbo. Output hash and size match.344 µs1.11× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG128 × 128 · RGB · quality 85 · 4:2:0 · restart every 4 rows129 µsBaselinelibjpeg-turbo. Output hash and size match.119 µs1.08× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match
DecodeDecode JPEG128 × 128 · GRAY · quality 8584.4 µsBaselinelibjpeg-turbo. Output hash and size match.88 µs1.04× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG512 × 512 · GRAY · quality 851.46 msBaselinelibjpeg-turbo. Output hash and size match.1.75 ms1.2× slowerimage-slash-star. Output hash and size match.libjpeg-turboOutput hash and size match
DecodeDecode JPEG128 × 128 · CMYK · quality 85356 µsBaselinelibjpeg-turbo. Output differs · speed comparison withheld.405 µsNot comparableimage-slash-star. Output differs · speed comparison withheld.Not comparableOutput differs · speed comparison withheld
DecodeDecode JPEG512 × 512 · CMYK · quality 855.96 msBaselinelibjpeg-turbo. Output differs · speed comparison withheld.6.93 msNot comparableimage-slash-star. Output differs · speed comparison withheld.Not comparableOutput differs · speed comparison withheld
DecodeDecode JPEG127 × 129 · RGB · quality 85 · 4:2:0122 µsBaselinelibjpeg-turbo. Output hash and size match.121 µs1.01× fasterimage-slash-star. Output hash and size match.image-slash-starOutput hash and size match

40 recorded workloads · 2026-11-11 · macOS-15.8.2-arm64-arm-64bit

JPEG encode and decode across image sizes, quality and color settings. Other codecs and complete decode–encode pipelines are not measured in this snapshot.

Measurement details and hardware · Download results · Contributor benchmark guide