Skip to content

Instantly share code, notes, and snippets.

@lilith
Last active May 27, 2017 17:09
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lilith/3c8e3600bfd5e440ecde670239d366dd to your computer and use it in GitHub Desktop.
Save lilith/3c8e3600bfd5e440ecde670239d366dd to your computer and use it in GitHub Desktop.
2016-06-10 benchmarks of libimageflow on Ubuntu 14.04 workstation. See www.imageflow.io
Use wrappers/server/bench.sh to reproduce
https://github.com/imazen/imageflow/commit/f05efb89f993827936693e98d39adb31057ec270
Run on a 4-core Xeon E3-1275 v5 with 32GB of ram.
https://gist.github.com/nathanaeljones/1a4394f994a542957f89a674ec83312b
This benchmark is for ubuntu 14.04.
Compiling imageflow-server v0.1.0 (file:///home/n/Documents/imazen/imageflow/wrappers/server)
Version: ImageMagick 6.9.3-7 Q16 x86_64 2016-05-04 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2016 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules OpenMP
Delegates (built-in): bzlib djvu fontconfig freetype gvc jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png tiff webp wmf x xml zlib
flow-proto1 0.0.1
libvips 8.3.1-Wed May 4 12:02:34 MDT 2016
File ‘u1.jpg’ already there; not retrieving.
mkdir: cannot create directory ‘bench_out’: File exists
mkdir: cannot create directory ‘bench_in’: File exists
Using imageflow to thumbnail 32 images in parallel
Performance counter stats for 'parallel ../flow-proto1 -i {} -o ../bench_out/{.}_200x200.jpg -w 200 -h 200 ::: c10.jpg c11.jpg c12.jpg c13.jpg c14.jpg c15.jpg c16.jpg c17.jpg c18.jpg c19.jpg c1.jpg c20.jpg c21.jpg c22.jpg c23.jpg c24.jpg c25.jpg c26.jpg c27.jpg c28.jpg c29.jpg c2.jpg c30.jpg c31.jpg c32.jpg c3.jpg c4.jpg c5.jpg c6.jpg c7.jpg c8.jpg c9.jpg':
6290.378919 task-clock (msec) # 6.776 CPUs utilized
1,118 context-switches # 0.178 K/sec
97 cpu-migrations # 0.015 K/sec
36,059 page-faults # 0.006 M/sec
23,165,294,892 cycles # 3.683 GHz
0 stalled-cycles-frontend # 0.00% frontend cycles idle
0 stalled-cycles-backend # 0.00% backend cycles idle
33,871,059,724 instructions # 1.46 insns per cycle
5,525,906,850 branches # 878.470 M/sec
168,074,257 branch-misses # 3.04% of all branches
0.928385975 seconds time elapsed
Using libvips to thumbnail 32 images in parallel
Performance counter stats for 'parallel vipsthumbnail --linear --size=200x200 --output=../bench_out/{.}_vips_200x200.jpg {} ::: c10.jpg c11.jpg c12.jpg c13.jpg c14.jpg c15.jpg c16.jpg c17.jpg c18.jpg c19.jpg c1.jpg c20.jpg c21.jpg c22.jpg c23.jpg c24.jpg c25.jpg c26.jpg c27.jpg c28.jpg c29.jpg c2.jpg c30.jpg c31.jpg c32.jpg c3.jpg c4.jpg c5.jpg c6.jpg c7.jpg c8.jpg c9.jpg':
20918.450523 task-clock (msec) # 6.846 CPUs utilized
5,229 context-switches # 0.250 K/sec
715 cpu-migrations # 0.034 K/sec
241,559 page-faults # 0.012 M/sec
77,463,121,743 cycles # 3.703 GHz
0 stalled-cycles-frontend # 0.00% frontend cycles idle
0 stalled-cycles-backend # 0.00% backend cycles idle
128,098,126,529 instructions # 1.65 insns per cycle
12,060,715,733 branches # 576.559 M/sec
174,014,757 branch-misses # 1.44% of all branches
3.055648849 seconds time elapsed
Using ImageMagick to thumbnail 32 images in parallel
Performance counter stats for 'parallel convert {} -set colorspace sRGB -colorspace RGB -filter Robidoux -resize 200x200 -colorspace sRGB ../bench_out/{.}_magick_200x200.jpg ::: c10.jpg c11.jpg c12.jpg c13.jpg c14.jpg c15.jpg c16.jpg c17.jpg c18.jpg c19.jpg c1.jpg c20.jpg c21.jpg c22.jpg c23.jpg c24.jpg c25.jpg c26.jpg c27.jpg c28.jpg c29.jpg c2.jpg c30.jpg c31.jpg c32.jpg c3.jpg c4.jpg c5.jpg c6.jpg c7.jpg c8.jpg c9.jpg':
120852.715344 task-clock (msec) # 7.631 CPUs utilized
24,167 context-switches # 0.200 K/sec
907 cpu-migrations # 0.008 K/sec
205,612 page-faults # 0.002 M/sec
444,355,017,082 cycles # 3.677 GHz
0 stalled-cycles-frontend # 0.00% frontend cycles idle
0 stalled-cycles-backend # 0.00% backend cycles idle
392,229,087,364 instructions # 0.88 insns per cycle
59,514,872,737 branches # 492.458 M/sec
210,941,385 branch-misses # 0.35% of all branches
15.837024762 seconds time elapsed
Using ImageMagick ideal settings to thumbnail 32 images in parallel
Performance counter stats for 'parallel convert {} -set colorspace sRGB -colorspace RGB -filter Mitchell -distort Resize 200x200 -colorspace sRGB ../bench_out/{.}_magick_ideal_200x200.jpg ::: c10.jpg c11.jpg c12.jpg c13.jpg c14.jpg c15.jpg c16.jpg c17.jpg c18.jpg c19.jpg c1.jpg c20.jpg c21.jpg c22.jpg c23.jpg c24.jpg c25.jpg c26.jpg c27.jpg c28.jpg c29.jpg c2.jpg c30.jpg c31.jpg c32.jpg c3.jpg c4.jpg c5.jpg c6.jpg c7.jpg c8.jpg c9.jpg':
185091.809684 task-clock (msec) # 7.743 CPUs utilized
29,945 context-switches # 0.162 K/sec
1,125 cpu-migrations # 0.006 K/sec
123,841 page-faults # 0.669 K/sec
685,531,666,882 cycles # 3.704 GHz
0 stalled-cycles-frontend # 0.00% frontend cycles idle
0 stalled-cycles-backend # 0.00% backend cycles idle
845,568,281,909 instructions # 1.23 insns per cycle
99,942,887,784 branches # 539.964 M/sec
446,154,485 branch-misses # 0.45% of all branches
23.904436593 seconds time elapsed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment