Benchmark Results

Server Info

CPU 2C/2T
RAM 3.7 GB
System Linux x86_64
Python 3.12.12

Test image: 1024 × 559 (0.57 MP) • 132 combinations
Generated: 2026-02-26T02:31:07Z • Start: 2026-02-26T02:30:59Z • End: 2026-02-26T02:31:07Z

Test Image

Benchmark test image

Summary

Fastest 8 ms
Slowest 170 ms
Average 34 ms
Range 20.0×

Matrix (ms)

None Floyd-S Ordered B 2×2 B 4×4 B 8×8 Atkinson Sierra Sierra-L Stucki Burkes
B/W 19 49 45 17 15 16 35 32 15 32 22
Gray 4 8 16 30 42 44 46 36 48 24 56 39
Gray 16 39 42 42 52 93 139 39 44 39 54 43
BWR 16 170 71 21 20 21 33 42 36 36 33
BWY 13 57 42 21 15 15 29 42 22 48 40
BWRY 11 33 35 16 17 18 23 28 17 32 24
Spectra 6 11 26 23 19 19 30 26 36 23 60 32
Gallery 7 13 27 28 28 34 58 44 50 26 39 28
Inky Sat 18 16 18 29 30 41 28 36 22 53 33
Inky Desat 13 30 37 32 29 31 68 57 37 44 31
Waveshare 13 31 35 28 30 26 30 36 24 41 29

Preservation Score Matrix

A (80+) B (65-79) C (50-64) D (35-49) F (<35)

None Floyd-S Ordered B 2×2 B 4×4 B 8×8 Atkinson Sierra Sierra-L Stucki Burkes
B/W 27 16 16 26 26 26 17 16 16 16 17
Gray 4 61 55 55 59 59 59 55 54 54 54 54
Gray 16 71 67 67 69 70 70 71 71 71 71 71
BWR 35 16 16 33 34 34 17 16 16 16 16
BWY 34 16 16 33 33 33 17 16 16 16 16
BWRY 38 16 16 38 38 38 18 16 16 16 16
Spectra 6 60 47 47 59 59 59 49 43 42 43 43
Gallery 7 45 26 26 44 44 45 31 26 25 26 26
Inky Sat 66 54 54 65 65 65 56 47 46 47 47
Inky Desat 43 23 23 42 42 42 28 24 23 24 24
Waveshare 43 23 23 42 42 42 28 24 23 24 24

Top 20 Best Quality

#PaletteDitherScoreGradeTime
1 Gray 16 None 71.4 B 39 ms
2 Gray 16 Sierra 71.2 B 44 ms
3 Gray 16 Atkinson 71.1 B 39 ms
4 Gray 16 Stucki 71.1 B 54 ms
5 Gray 16 Burkes 71.1 B 43 ms
6 Gray 16 Sierra Lite 71.0 B 39 ms
7 Gray 16 Bayer 8×8 69.9 B 139 ms
8 Gray 16 Bayer 4×4 69.7 B 93 ms
9 Gray 16 Bayer 2×2 69.0 B 52 ms
10 Gray 16 Floyd-Steinberg 67.2 B 42 ms
11 Gray 16 Ordered 67.2 B 42 ms
12 Inky Sat None 65.9 B 18 ms
13 Inky Sat Bayer 8×8 65.3 B 41 ms
14 Inky Sat Bayer 4×4 65.2 B 30 ms
15 Inky Sat Bayer 2×2 65.1 B 29 ms
16 Gray 4 None 60.9 C 8 ms
17 Spectra 6 None 60.3 C 11 ms
18 Spectra 6 Bayer 8×8 59.3 C 30 ms
19 Gray 4 Bayer 8×8 59.2 C 46 ms
20 Spectra 6 Bayer 4×4 59.2 C 19 ms

Top 20 Fastest

#PaletteDitherTimeSpeedScore
1 Gray 4 None 8 ms 67.7 MP/s C
2 Spectra 6 None 11 ms 52.9 MP/s C
3 BWRY None 11 ms 50.5 MP/s D
4 Gallery 7 None 13 ms 44.3 MP/s D
5 BWY None 13 ms 44.0 MP/s F
6 Inky Desat None 13 ms 43.9 MP/s D
7 Waveshare None 13 ms 43.8 MP/s D
8 BWY Bayer 8×8 15 ms 38.5 MP/s F
9 B/W Sierra Lite 15 ms 38.0 MP/s F
10 B/W Bayer 4×4 15 ms 37.1 MP/s F
11 BWY Bayer 4×4 15 ms 37.3 MP/s F
12 BWRY Bayer 2×2 16 ms 36.3 MP/s D
13 BWR None 16 ms 35.6 MP/s F
14 Inky Sat Floyd-Steinberg 16 ms 35.6 MP/s C
15 Gray 4 Floyd-Steinberg 16 ms 35.2 MP/s C
16 B/W Bayer 8×8 16 ms 34.6 MP/s F
17 BWRY Bayer 4×4 17 ms 34.5 MP/s D
18 B/W Bayer 2×2 17 ms 34.3 MP/s F
19 BWRY Sierra Lite 17 ms 33.9 MP/s F
20 BWRY Bayer 8×8 18 ms 32.3 MP/s D

Top 20 Slowest

#PaletteDitherTimeSpeedScore
1 BWR Floyd-Steinberg 170 ms 3.4 MP/s F
2 Gray 16 Bayer 8×8 139 ms 4.1 MP/s B
3 Gray 16 Bayer 4×4 93 ms 6.1 MP/s B
4 BWR Ordered 71 ms 8.1 MP/s F
5 Inky Desat Atkinson 68 ms 8.4 MP/s F
6 Spectra 6 Stucki 60 ms 9.5 MP/s D
7 Gallery 7 Bayer 8×8 58 ms 9.8 MP/s D
8 Inky Desat Sierra 57 ms 10.0 MP/s F
9 BWY Floyd-Steinberg 57 ms 10.1 MP/s F
10 Gray 4 Stucki 56 ms 10.1 MP/s C
11 spectra_6_std Stucki 56 ms 10.2 MP/s D
12 spectra_6_std Sierra 54 ms 10.6 MP/s D
13 Gray 16 Stucki 54 ms 10.7 MP/s B
14 Inky Sat Stucki 53 ms 10.8 MP/s D
15 Gray 16 Bayer 2×2 52 ms 11.1 MP/s B
16 Gallery 7 Sierra 50 ms 11.5 MP/s F
17 B/W Floyd-Steinberg 49 ms 11.8 MP/s F
18 BWY Stucki 48 ms 11.8 MP/s F
19 Gray 4 Sierra 48 ms 11.9 MP/s C
20 spectra_6_std Bayer 8×8 47 ms 12.3 MP/s C

Notes

  • 11 palettes × 11 dither methods = 121 combinations
  • PIL Native (Ordered, Floyd-Steinberg): Fastest, uses Pillow's C implementation
  • Numba JIT (Bayer, None): Near-native speed with parallel execution
  • Error Diffusion (Atkinson, Sierra, Stucki, Burkes): Quality over speed
  • Fewer palette colors generally = faster conversion