Linux 3.12 Kernel IO Scheduler Performance Benchmarks Deadline, CFQ, and Noop I/O scheduler benchmarks from the Linux 3.12 Git kernel using an Intel Core i7 4960X Ivy Bridge Extreme processor on Ubuntu 13.10 base. Benchmarking by Michael Larabel of Phoronix.com. Just some quick tests for now... More on the way :)
HTML result view exported from: https://openbenchmarking.org/result/1310105-SO-LINUX312K58 .
Linux 3.12 Kernel IO Scheduler Performance Benchmarks Processor Motherboard Chipset Memory Disk Graphics Audio Monitor Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution Deadline CFQ Noop Intel Core i7-4960X @ 4.00GHz (12 Cores) MSI X79MA-GD45 (MS-7738) v1.0 Intel Xeon E5 v2/Core 8192MB 320GB Seagate ST3320620AS Sapphire AMD Radeon HD 4870 512MB Realtek ALC892 AL2223W Realtek RTL8111/8168/8411 Ubuntu 13.10 3.12.0-999-generic (x86_64) Unity 7.1.1 X Server 1.14.3 radeon 7.2.0 3.1 Mesa 9.3.0-devel (git-e166a58) Gallium 0.4 GCC 4.8 + LLVM 3.2 ext4 1680x1050 OpenBenchmarking.org Compiler Details - --build=x86_64-linux-gnu --disable-browser-plugin --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-multilib-list=m32,m64,mx32 --with-tune=generic -v Disk Details - Deadline: DEADLINE / data=ordered,errors=remount-ro,relatime,rw - CFQ: CFQ / data=ordered,errors=remount-ro,relatime,rw - Noop: NOOP / data=ordered,errors=remount-ro,relatime,rw Processor Details - Scaling Governor: intel_pstate powersave System Details - Deadline: Disk Scheduler: DEADLINE. Python 2.7.5+. - CFQ: Disk Scheduler: CFQ. Python 2.7.5+. - Noop: Disk Scheduler: NOOP. Python 2.7.5+.
Linux 3.12 Kernel IO Scheduler Performance Benchmarks fs-mark: 1000 Files, 1MB Size fs-mark: 5000 Files, 1MB Size, 4 Threads fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size compilebench: Compile compilebench: Initial Create compilebench: Read Compiled Tree postmark: Disk Transaction Performance build-linux-kernel: Time To Compile build-php: Time To Compile nginx: Static Web Page Serving apache: Static Web Page Serving Deadline CFQ Noop 15.40 33.60 16.80 75.90 95.87 765.76 5210 61.91 21.88 27570.44 16818.41 15.73 33.07 16.77 67.10 93.42 819.13 5068 62.23 21.80 28094.53 16697.59 15.50 33.60 16.97 65.92 96.82 797.69 5210 62.73 21.88 27738.96 16650.77 OpenBenchmarking.org
FS-Mark Test: 1000 Files, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size Deadline CFQ Noop 4 8 12 16 20 SE +/- 0.32, N = 6 SE +/- 0.07, N = 3 SE +/- 0.26, N = 6 15.40 15.73 15.50 1. (CC) gcc options: -static
FS-Mark Test: 5000 Files, 1MB Size, 4 Threads OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Deadline CFQ Noop 8 16 24 32 40 SE +/- 0.00, N = 3 SE +/- 0.13, N = 3 SE +/- 0.00, N = 3 33.60 33.07 33.60 1. (CC) gcc options: -static
FS-Mark Test: 4000 Files, 32 Sub Dirs, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Deadline CFQ Noop 4 8 12 16 20 SE +/- 0.06, N = 3 SE +/- 0.03, N = 3 SE +/- 0.09, N = 3 16.80 16.77 16.97 1. (CC) gcc options: -static
Compile Bench Test: Compile OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Compile Deadline CFQ Noop 20 40 60 80 100 SE +/- 4.79, N = 6 SE +/- 0.22, N = 3 SE +/- 1.10, N = 6 75.90 67.10 65.92
Compile Bench Test: Initial Create OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create Deadline CFQ Noop 20 40 60 80 100 SE +/- 1.62, N = 3 SE +/- 0.88, N = 3 SE +/- 1.14, N = 3 95.87 93.42 96.82
Compile Bench Test: Read Compiled Tree OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Read Compiled Tree Deadline CFQ Noop 200 400 600 800 1000 SE +/- 11.47, N = 4 SE +/- 13.69, N = 3 SE +/- 11.16, N = 3 765.76 819.13 797.69
PostMark Disk Transaction Performance OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance Deadline CFQ Noop 1100 2200 3300 4400 5500 SE +/- 62.65, N = 3 SE +/- 34.00, N = 3 SE +/- 62.65, N = 3 5210 5068 5210 1. (CC) gcc options: -O3
Timed Linux Kernel Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed Linux Kernel Compilation 3.1 Time To Compile Deadline CFQ Noop 14 28 42 56 70 SE +/- 0.71, N = 3 SE +/- 0.80, N = 3 SE +/- 0.69, N = 3 61.91 62.23 62.73
Timed PHP Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed PHP Compilation 5.2.9 Time To Compile Deadline CFQ Noop 5 10 15 20 25 SE +/- 0.48, N = 6 SE +/- 0.35, N = 4 SE +/- 0.43, N = 6 21.88 21.80 21.88 1. (CC) gcc options: -O2 -pedantic -ldl -lz -lm
NGINX Benchmark Static Web Page Serving OpenBenchmarking.org Requests Per Second, More Is Better NGINX Benchmark 1.0.11 Static Web Page Serving Deadline CFQ Noop 6K 12K 18K 24K 30K SE +/- 285.22, N = 3 SE +/- 36.89, N = 3 SE +/- 168.01, N = 3 27570.44 28094.53 27738.96 1. (CC) gcc options: -lpthread -lcrypt -lcrypto -lz -pipe
Apache Benchmark Static Web Page Serving OpenBenchmarking.org Requests Per Second, More Is Better Apache Benchmark 2.4.3 Static Web Page Serving Deadline CFQ Noop 4K 8K 12K 16K 20K SE +/- 150.37, N = 3 SE +/- 148.44, N = 3 SE +/- 313.00, N = 3 16818.41 16697.59 16650.77 1. (CC) gcc options: -shared -fPIC -O2 -pthread
Phoronix Test Suite v10.8.5