Last active
June 24, 2016 22:55
-
-
Save lilith/f976fac8b53f41d69224c56ac15c3e3e to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This version of Imageflow was used: https://github.com/imazen/imageflow/commit/80d38f8c471d60a89dfebe9543fb364b99c7743e | |
The benchmark script is here: https://github.com/imazen/imageflow/blob/80d38f8c471d60a89dfebe9543fb364b99c7743e/wrappers/server/bench_single_thread.sh | |
./bench_single_thread.sh | |
This benchmark is for ubuntu 14.04. | |
Please run the following commands first for more accurate results | |
mkdir bench_in | |
mkdir bench_out | |
sudo mount -t tmpfs -o size=512M tmpfs bench_in | |
sudo mount -t tmpfs -o size=512M tmpfs bench_out | |
You may also need to sudo apt-get install parallel | |
and sudo apt-get install linux-tools-common linux-tools-generic | |
on OS X, you will need to edit this script to use time instead of perf stat | |
Compiling imageflow-server v0.1.0 (file:///home/n/Documents/imazen/imageflow/wrappers/server) | |
src/bin/flow-proto1.rs:6:5: 6:18 warning: unused import, #[warn(unused_imports)] on by default | |
src/bin/flow-proto1.rs:6 use std::fs::File; | |
^~~~~~~~~~~~~ | |
src/bin/flow-proto1.rs:7:5: 7:19 warning: unused import, #[warn(unused_imports)] on by default | |
src/bin/flow-proto1.rs:7 use std::io::Write; | |
^~~~~~~~~~~~~~ | |
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 | |
Performance counter stats for '../flow-proto1 -i c1.jpg -o ../bench_out/1_200x200.jpg -w 200 -h 200': | |
132.509766 task-clock (msec) # 0.996 CPUs utilized | |
11 context-switches # 0.083 K/sec | |
4 cpu-migrations # 0.030 K/sec | |
131 page-faults # 0.989 K/sec | |
506,220,228 cycles # 3.820 GHz | |
0 stalled-cycles-frontend # 0.00% frontend cycles idle | |
0 stalled-cycles-backend # 0.00% backend cycles idle | |
1,037,933,409 instructions # 2.05 insns per cycle | |
167,858,228 branches # 1266.761 M/sec | |
5,172,052 branch-misses # 3.08% of all branches | |
0.133037757 seconds time elapsed | |
Command being timed: "../flow-proto1 -i c1.jpg -o ../bench_out/1_200x200.jpg -w 200 -h 200" | |
User time (seconds): 0.12 | |
System time (seconds): 0.00 | |
Percent of CPU this job got: 98% | |
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.13 | |
Average shared text size (kbytes): 0 | |
Average unshared data size (kbytes): 0 | |
Average stack size (kbytes): 0 | |
Average total size (kbytes): 0 | |
Maximum resident set size (kbytes): 9784 | |
Average resident set size (kbytes): 0 | |
Major (requiring I/O) page faults: 0 | |
Minor (reclaiming a frame) page faults: 149 | |
Voluntary context switches: 1 | |
Involuntary context switches: 12 | |
Swaps: 0 | |
File system inputs: 0 | |
File system outputs: 0 | |
Socket messages sent: 0 | |
Socket messages received: 0 | |
Signals delivered: 0 | |
Page size (bytes): 4096 | |
Exit status: 0 | |
Using libvips to thumbnail | |
Performance counter stats for 'vipsthumbnail --linear --size=200x200 --output=../bench_out/1_vips_200x200.jpg c1.jpg': | |
367.322957 task-clock (msec) # 1.003 CPUs utilized | |
71 context-switches # 0.193 K/sec | |
14 cpu-migrations # 0.038 K/sec | |
6,397 page-faults # 0.017 M/sec | |
1,416,952,393 cycles # 3.858 GHz | |
0 stalled-cycles-frontend # 0.00% frontend cycles idle | |
0 stalled-cycles-backend # 0.00% backend cycles idle | |
3,987,576,919 instructions # 2.81 insns per cycle | |
374,001,277 branches # 1018.181 M/sec | |
5,347,499 branch-misses # 1.43% of all branches | |
0.366144377 seconds time elapsed | |
Command being timed: "vipsthumbnail --linear --size=200x200 --output=../bench_out/1_vips_200x200.jpg c1.jpg" | |
User time (seconds): 0.37 | |
System time (seconds): 0.01 | |
Percent of CPU this job got: 100% | |
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.38 | |
Average shared text size (kbytes): 0 | |
Average unshared data size (kbytes): 0 | |
Average stack size (kbytes): 0 | |
Average total size (kbytes): 0 | |
Maximum resident set size (kbytes): 34952 | |
Average resident set size (kbytes): 0 | |
Major (requiring I/O) page faults: 0 | |
Minor (reclaiming a frame) page faults: 6419 | |
Voluntary context switches: 33 | |
Involuntary context switches: 34 | |
Swaps: 0 | |
File system inputs: 0 | |
File system outputs: 0 | |
Socket messages sent: 0 | |
Socket messages received: 0 | |
Signals delivered: 0 | |
Page size (bytes): 4096 | |
Exit status: 0 | |
Using ImageMagick to thumbnail | |
Performance counter stats for 'convert c1.jpg -limit thread 1 -set colorspace sRGB -colorspace RGB -filter Robidoux -resize 200x200 -colorspace sRGB ../bench_out/1_magick_200x200.jpg': | |
1858.142059 task-clock (msec) # 0.998 CPUs utilized | |
159 context-switches # 0.086 K/sec | |
5 cpu-migrations # 0.003 K/sec | |
4,467 page-faults # 0.002 M/sec | |
7,003,690,152 cycles # 3.769 GHz | |
0 stalled-cycles-frontend # 0.00% frontend cycles idle | |
0 stalled-cycles-backend # 0.00% backend cycles idle | |
12,100,982,591 instructions # 1.73 insns per cycle | |
1,812,822,570 branches # 975.610 M/sec | |
6,305,101 branch-misses # 0.35% of all branches | |
1.862236678 seconds time elapsed | |
Command being timed: "convert c1.jpg -limit thread 1 -set colorspace sRGB -colorspace RGB -filter Robidoux -resize 200x200 -colorspace sRGB ../bench_out/1_magick_200x200.jpg" | |
User time (seconds): 1.78 | |
System time (seconds): 0.02 | |
Percent of CPU this job got: 99% | |
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:01.81 | |
Average shared text size (kbytes): 0 | |
Average unshared data size (kbytes): 0 | |
Average stack size (kbytes): 0 | |
Average total size (kbytes): 0 | |
Maximum resident set size (kbytes): 546040 | |
Average resident set size (kbytes): 0 | |
Major (requiring I/O) page faults: 0 | |
Minor (reclaiming a frame) page faults: 4484 | |
Voluntary context switches: 1 | |
Involuntary context switches: 155 | |
Swaps: 0 | |
File system inputs: 0 | |
File system outputs: 0 | |
Socket messages sent: 0 | |
Socket messages received: 0 | |
Signals delivered: 0 | |
Page size (bytes): 4096 | |
Exit status: 0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment