Linux IO Scheduler Testing - CFQ, Deadline, Noop Testing for a future article on Phoronix.com of different Linux kernel IO schedulers from the Linux 3.4 kernel: CFQ, Noop, and Deadline. Intel Core 2 Duo T9300 and Intel Core i5 Sandy Bridge and Core i7 Clarksfield setups with hard drive and solid-state drives tested.
HTML result view exported from: https://openbenchmarking.org/result/1204132-SU-SCHEDULER98&grr&sor .
Processor Motherboard Chipset Memory Disk Graphics Audio Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution Penryn + HDD Sandy Bridge + SSD Clarksfield + SSD CFQ Noop Deadline CFQ Noop Deadline CFQ Noop Deadline Intel Core 2 Duo T9300 @ 2.50GHz (2 Cores) LENOVO 6459CTO Intel Mobile PM965/GM965/GL960 + ICH8M-E 4096MB 100GB Hitachi HTS72201 NVIDIA Quadro NVS 140M 128MB (275/302MHz) Analog Devices AD1984 Intel 82566MM Gigabit Connection + Intel PRO/Wireless Ubuntu 12.04 3.4.0-999-generic (x86_64) Unity 5.8.0 X Server 1.11.3 nouveau 0.0.16 2.1 Mesa 8.0.2 Gallium 0.4 GCC 4.6 ext4 1680x1050 LLVMpipe NVIDIA Quadro NVS 140M 128MB (275/302MHz) Intel Core i5-2520M @ 2.50GHz (4 Cores) HP 161C Intel 2nd Generation Core Family DRAM 160GB INTEL SSDSA2M160 Intel Sandybridge Mobile (GT2+) IDT 92HD81B1X5 Intel 82579LM Gigabit Connection + Intel Centrino Advanced-N 6205 intel 2.17.0 3.0 Mesa 8.0.2 1600x900 Intel Core i7 720Q @ 1.60GHz (8 Cores) LENOVO 4318CTO Intel Core DMI NVIDIA Quadro FX 880M 1024MB (405/324MHz) Conexant CX20585 Intel 82577LM Gigabit Connection + Intel Centrino Ultimate-N 6300 nouveau 0.0.16 2.1 Mesa 8.0.2 Gallium 0.4 OpenBenchmarking.org Compiler Details - --build=x86_64-linux-gnu --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-languages=c,c++,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-arch-32=i686 --with-tune=generic -v Disk Details - Penryn + HDD: CFQ: CFQ / data=ordered,errors=remount-ro,relatime,rw - Penryn + HDD: Noop: NOOP / data=ordered,errors=remount-ro,relatime,rw - Penryn + HDD: Deadline: DEADLINE / data=ordered,errors=remount-ro,relatime,rw - Sandy Bridge + SSD: CFQ: CFQ / data=ordered,errors=remount-ro,relatime,rw - Sandy Bridge + SSD: Noop: NOOP / data=ordered,errors=remount-ro,relatime,rw - Sandy Bridge + SSD: Deadline: DEADLINE / data=ordered,errors=remount-ro,relatime,rw - Clarksfield + SSD: CFQ: CFQ / data=ordered,errors=remount-ro,relatime,rw - Clarksfield + SSD: Noop: NOOP / data=ordered,errors=remount-ro,relatime,rw - Clarksfield + SSD: Deadline: DEADLINE / data=ordered,errors=remount-ro,relatime,rw Processor Details - Scaling Governor: ondemand System Details - Penryn + HDD: CFQ: Disk Scheduler: CFQ. Python 2.7.3. Compiz was running on this system. - Penryn + HDD: Noop: Disk Scheduler: NOOP. Python 2.7.3. Compiz was running on this system. - Penryn + HDD: Deadline: Disk Scheduler: DEADLINE. Python 2.7.3. Compiz was running on this system. - Sandy Bridge + SSD: CFQ: Disk Scheduler: CFQ. Python 2.7.3rc2. Compiz was running on this system. - Sandy Bridge + SSD: Noop: Disk Scheduler: NOOP. Python 2.7.3rc2. Compiz was running on this system. - Sandy Bridge + SSD: Deadline: Disk Scheduler: DEADLINE. Python 2.7.3rc2. Compiz was running on this system. - Clarksfield + SSD: CFQ: Disk Scheduler: CFQ. Python 2.7.3. Compiz was running on this system. - Clarksfield + SSD: Noop: Disk Scheduler: NOOP. Python 2.7.3. Compiz was running on this system. - Clarksfield + SSD: Deadline: Disk Scheduler: DEADLINE. Python 2.7.3. Compiz was running on this system.
pgbench: TPC-B Transactions Per Second nginx: Static Web Page Serving apache: Static Web Page Serving build-php: Time To Compile build-linux-kernel: Time To Compile postmark: Disk Transaction Performance tiobench: Rand Write - 64MB - 8 tiobench: Rand Write - 64MB - 16 tiobench: Rand Write - 128MB - 16 tiobench: Rand Write - 128MB - 8 iozone: 64Kb - 8GB - Write Performance iozone: 64Kb - 8GB - Read Performance compilebench: Read Compiled Tree compilebench: Initial Create compilebench: Compile blogbench: Write fs-mark: 1000 Files, 1MB Size, No Sync/FSync fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size fs-mark: 1000 Files, 1MB Size fs-mark: 5000 Files, 1MB Size, 4 Threads Penryn + HDD Sandy Bridge + SSD Clarksfield + SSD CFQ Noop Deadline CFQ Noop Deadline CFQ Noop Deadline 112.00 14157.59 11255.18 91.75 329.46 1388 2.74 2.74 1.93 2.01 52.36 65.47 48.68 47.62 40.33 923 68.70 18.20 17.77 36.00 112.76 14181.20 11570.62 91.89 329.42 1388 2.68 2.20 1.74 1.82 56.01 62.49 51.19 45.71 36.28 783 68.10 17.22 16.23 35.03 112.57 14207.02 11320.64 91.80 330.01 1388 2.70 2.76 1.93 1.98 54.04 64.36 50.43 45.65 43.61 882 68.60 20.57 19.53 36.07 2420.24 27044.65 19806.55 57.01 202.35 90.34 88.41 87.37 88.30 107.03 254.84 151.59 100.69 107.71 1531 145.35 77.43 76.90 99.33 1643.91 27426.18 19836.92 57.58 202.81 89.96 89.53 87.98 82.25 103.37 253.71 126.82 81.34 83.07 3079 152.17 75.87 76.07 96.20 1863.23 27437.35 19903.83 57.26 203.12 90.23 88.82 80.29 68.56 99.33 251.98 126.27 83.86 78.51 2796 146.17 75.50 75.27 96.00 2357.81 15722.56 14233.48 52.42 181.39 89.15 89.59 88.23 83.48 105.88 241.73 148.68 90.65 107.15 1496 148.37 79.93 79.73 97.60 2021.72 15747.16 14144.83 52.62 182.00 2500 93.61 91.12 87.42 89.60 100.35 240.68 146.23 72.24 81.20 3272 146.05 78.47 78.70 94.80 1940.40 15762.83 14135.51 52.59 182.07 2500 94.70 92.79 92.80 92.55 101.17 240.84 183.73 69.46 73.47 2546 147.93 78.27 78.53 94.40 OpenBenchmarking.org
PostgreSQL pgbench TPC-B Transactions Per Second Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org TPS, More Is Better PostgreSQL pgbench 8.4.11 TPC-B Transactions Per Second CFQ Noop Deadline 500 1000 1500 2000 2500 SE +/- 114.10, N = 6 SE +/- 51.48, N = 6 SE +/- 21.31, N = 3 SE +/- 16.17, N = 3 SE +/- 80.83, N = 6 SE +/- 73.53, N = 6 SE +/- 0.75, N = 3 SE +/- 0.48, N = 3 SE +/- 0.29, N = 3 2420.24 1863.23 1643.91 2357.81 2021.72 1940.40 112.76 112.57 112.00 1. (CC) gcc options: -O2 -fno-strict-aliasing -fwrapv -lpgport -lpq -lcrypt -ldl -lm
NGINX Benchmark Static Web Page Serving Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org Requests Per Second, More Is Better NGINX Benchmark 1.0.11 Static Web Page Serving Deadline Noop CFQ 6K 12K 18K 24K 30K SE +/- 228.12, N = 3 SE +/- 368.02, N = 3 SE +/- 381.12, N = 3 SE +/- 78.35, N = 3 SE +/- 119.30, N = 3 SE +/- 144.33, N = 3 SE +/- 40.09, N = 3 SE +/- 18.78, N = 3 SE +/- 64.83, N = 3 27437.35 27426.18 27044.65 15762.83 15747.16 15722.56 14207.02 14181.20 14157.59 1. (CC) gcc options: -lpthread -lcrypt -lz
Apache Benchmark Static Web Page Serving Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org Requests Per Second, More Is Better Apache Benchmark 2.2.21 Static Web Page Serving Deadline Noop CFQ 4K 8K 12K 16K 20K SE +/- 43.97, N = 3 SE +/- 174.94, N = 3 SE +/- 92.62, N = 3 SE +/- 45.95, N = 3 SE +/- 81.17, N = 3 SE +/- 53.71, N = 3 SE +/- 26.41, N = 3 SE +/- 93.72, N = 3 SE +/- 39.53, N = 3 19903.83 19836.92 19806.55 14233.48 14144.83 14135.51 11570.62 11320.64 11255.18 1. (CC) gcc options: -O2 -pthread -lm -lrt -lcrypt -lpthread -ldl
Timed PHP Compilation Time To Compile Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org Seconds, Fewer Is Better Timed PHP Compilation 5.2.9 Time To Compile CFQ Deadline Noop 20 40 60 80 100 SE +/- 0.05, N = 3 SE +/- 0.02, N = 3 SE +/- 0.01, N = 3 SE +/- 0.06, N = 3 SE +/- 0.36, N = 3 SE +/- 0.76, N = 3 SE +/- 0.11, N = 3 SE +/- 0.18, N = 3 SE +/- 0.16, N = 3 52.42 52.59 52.62 57.01 57.26 57.58 91.75 91.80 91.89 1. (CC) gcc options: -O2 -pedantic -ldl -lz -lm
Timed Linux Kernel Compilation Time To Compile Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org Seconds, Fewer Is Better Timed Linux Kernel Compilation 3.1 Time To Compile CFQ Noop Deadline 70 140 210 280 350 SE +/- 0.55, N = 3 SE +/- 0.50, N = 3 SE +/- 0.51, N = 3 SE +/- 0.73, N = 3 SE +/- 0.76, N = 3 SE +/- 0.74, N = 3 SE +/- 0.83, N = 3 SE +/- 0.82, N = 3 SE +/- 0.75, N = 3 181.39 182.00 182.07 202.35 202.81 203.12 329.42 329.46 330.01
PostMark Disk Transaction Performance Clarksfield + SSD Penryn + HDD OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance Deadline Noop CFQ 500 1000 1500 2000 2500 SE +/- 0.00, N = 5 SE +/- 0.00, N = 5 SE +/- 0.00, N = 5 SE +/- 0.00, N = 5 2500 2500 1388 1388 1388
Threaded I/O Tester Test: Random Write - Size Per Thread: 64MB - Thread Count: 8 Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 64MB - Thread Count: 8 Deadline Noop CFQ 20 40 60 80 100 SE +/- 0.24, N = 4 SE +/- 0.09, N = 4 SE +/- 1.13, N = 8 SE +/- 0.46, N = 4 SE +/- 0.36, N = 4 SE +/- 0.16, N = 4 SE +/- 0.03, N = 4 SE +/- 0.02, N = 4 SE +/- 0.15, N = 8 94.70 93.61 89.15 90.34 90.23 89.96 2.74 2.70 2.68
Threaded I/O Tester Test: Random Write - Size Per Thread: 64MB - Thread Count: 16 Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 64MB - Thread Count: 16 Deadline Noop CFQ 20 40 60 80 100 SE +/- 1.05, N = 4 SE +/- 1.30, N = 8 SE +/- 0.14, N = 4 SE +/- 0.23, N = 4 SE +/- 0.75, N = 4 SE +/- 0.18, N = 4 SE +/- 0.03, N = 4 SE +/- 0.01, N = 4 SE +/- 0.05, N = 8 92.79 91.12 89.59 89.53 88.82 88.41 2.76 2.74 2.20
Threaded I/O Tester Test: Random Write - Size Per Thread: 128MB - Thread Count: 16 Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 128MB - Thread Count: 16 Deadline CFQ Noop 20 40 60 80 100 SE +/- 0.20, N = 4 SE +/- 0.13, N = 4 SE +/- 3.68, N = 8 SE +/- 0.39, N = 4 SE +/- 0.38, N = 4 SE +/- 5.12, N = 8 SE +/- 0.02, N = 4 SE +/- 0.02, N = 4 SE +/- 0.02, N = 4 92.80 88.23 87.42 87.98 87.37 80.29 1.93 1.93 1.74
Threaded I/O Tester Test: Random Write - Size Per Thread: 128MB - Thread Count: 8 Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 128MB - Thread Count: 8 Deadline Noop CFQ 20 40 60 80 100 SE +/- 0.21, N = 4 SE +/- 2.45, N = 8 SE +/- 5.33, N = 8 SE +/- 0.48, N = 4 SE +/- 5.55, N = 8 SE +/- 8.87, N = 8 SE +/- 0.01, N = 4 SE +/- 0.01, N = 4 SE +/- 0.01, N = 4 92.55 89.60 83.48 88.30 82.25 68.56 2.01 1.98 1.82
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better IOzone 3.347 Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance CFQ Noop Deadline 20 40 60 80 100 SE +/- 0.33, N = 3 SE +/- 0.06, N = 3 SE +/- 1.61, N = 3 SE +/- 1.04, N = 3 SE +/- 0.80, N = 3 SE +/- 2.03, N = 6 SE +/- 3.28, N = 6 SE +/- 3.31, N = 6 SE +/- 2.88, N = 6 107.03 103.37 99.33 105.88 101.17 100.35 56.01 54.04 52.36 1. (CC) gcc options: -O3
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better IOzone 3.347 Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance CFQ Noop Deadline 60 120 180 240 300 SE +/- 0.03, N = 3 SE +/- 0.30, N = 3 SE +/- 0.71, N = 3 SE +/- 0.04, N = 3 SE +/- 0.49, N = 3 SE +/- 0.29, N = 3 SE +/- 0.26, N = 3 SE +/- 0.31, N = 3 SE +/- 0.29, N = 3 254.84 253.71 251.98 241.73 240.84 240.68 65.47 64.36 62.49 1. (CC) gcc options: -O3
Compile Bench Test: Read Compiled Tree Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Read Compiled Tree Deadline CFQ Noop 40 80 120 160 200 SE +/- 37.24, N = 3 SE +/- 1.66, N = 3 SE +/- 1.97, N = 3 SE +/- 1.30, N = 3 SE +/- 1.12, N = 3 SE +/- 2.50, N = 3 SE +/- 0.46, N = 3 SE +/- 0.91, N = 3 SE +/- 0.90, N = 3 183.73 148.68 146.23 151.59 126.82 126.27 51.19 50.43 48.68
Compile Bench Test: Initial Create Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create CFQ Deadline Noop 20 40 60 80 100 SE +/- 1.90, N = 3 SE +/- 2.04, N = 3 SE +/- 0.13, N = 3 SE +/- 3.46, N = 3 SE +/- 0.78, N = 3 SE +/- 1.84, N = 3 SE +/- 0.11, N = 2 SE +/- 0.71, N = 3 SE +/- 3.02, N = 3 100.69 83.86 81.34 90.65 72.24 69.46 47.62 45.71 45.65
Compile Bench Test: Compile Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Compile CFQ Noop Deadline 20 40 60 80 100 SE +/- 0.62, N = 3 SE +/- 0.53, N = 3 SE +/- 1.07, N = 3 SE +/- 0.62, N = 3 SE +/- 2.82, N = 6 SE +/- 0.53, N = 3 SE +/- 0.46, N = 3 SE +/- 0.18, N = 3 SE +/- 0.50, N = 3 107.71 83.07 78.51 107.15 81.20 73.47 43.61 40.33 36.28
BlogBench Test: Write Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org Final Score, More Is Better BlogBench 1.0 Test: Write Noop Deadline CFQ 700 1400 2100 2800 3500 SE +/- 99.29, N = 6 SE +/- 63.96, N = 6 SE +/- 27.43, N = 3 SE +/- 173.66, N = 6 SE +/- 107.67, N = 6 SE +/- 23.59, N = 6 SE +/- 17.23, N = 6 SE +/- 12.59, N = 5 SE +/- 12.94, N = 6 3272 2546 1496 3079 2796 1531 923 882 783 1. (CC) gcc options: -O2 -pthread
FS-Mark Test: 1000 Files, 1MB Size, No Sync/FSync Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size, No Sync/FSync Noop CFQ Deadline 30 60 90 120 150 SE +/- 0.71, N = 3 SE +/- 2.71, N = 3 SE +/- 2.33, N = 6 SE +/- 2.21, N = 3 SE +/- 2.25, N = 3 SE +/- 2.35, N = 4 SE +/- 1.33, N = 3 SE +/- 1.10, N = 3 SE +/- 0.89, N = 3 152.17 146.17 145.35 148.37 147.93 146.05 68.70 68.60 68.10 1. (CC) gcc options: -static
FS-Mark Test: 4000 Files, 32 Sub Dirs, 1MB Size Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size CFQ Noop Deadline 20 40 60 80 100 SE +/- 0.22, N = 3 SE +/- 0.19, N = 3 SE +/- 0.23, N = 3 SE +/- 0.03, N = 3 SE +/- 0.20, N = 3 SE +/- 0.15, N = 3 SE +/- 0.37, N = 3 SE +/- 0.12, N = 3 SE +/- 0.67, N = 6 79.93 78.47 78.27 77.43 75.87 75.50 20.57 18.20 17.22 1. (CC) gcc options: -static
FS-Mark Test: 1000 Files, 1MB Size Clarksfield + SSD Sandy Bridge + SSD Penryn + HDD OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size CFQ Noop Deadline 20 40 60 80 100 SE +/- 1.02, N = 3 SE +/- 0.75, N = 3 SE +/- 0.82, N = 3 SE +/- 0.75, N = 3 SE +/- 0.74, N = 3 SE +/- 0.79, N = 3 SE +/- 0.15, N = 3 SE +/- 0.03, N = 3 SE +/- 0.19, N = 3 79.73 78.70 78.53 76.90 76.07 75.27 19.53 17.77 16.23 1. (CC) gcc options: -static
FS-Mark Test: 5000 Files, 1MB Size, 4 Threads Sandy Bridge + SSD Clarksfield + SSD Penryn + HDD OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads CFQ Noop Deadline 20 40 60 80 100 SE +/- 0.13, N = 3 SE +/- 0.12, N = 3 SE +/- 0.40, N = 3 SE +/- 0.00, N = 3 SE +/- 0.23, N = 3 SE +/- 0.23, N = 3 SE +/- 1.17, N = 6 SE +/- 0.69, N = 3 SE +/- 0.73, N = 6 99.33 96.20 96.00 97.60 94.80 94.40 36.07 36.00 35.03 1. (CC) gcc options: -static
Phoronix Test Suite v10.8.5