EXT4 File-System Mount Option Tuning Intel Core i7 720Q with Intel SSD benchmarking of various EXT4 file-system mount options. EXT4 testing from Ubuntu 12.10 64-bit with the Linux 3.5 kernel. Benchmarking by Michael Larabel for a future article looking at Linux file-system performance on Phoronix.
HTML result view exported from: https://openbenchmarking.org/result/1211159-RA-EXT4FILES89&sro&grw .
EXT4 File-System Mount Option Tuning Processor Motherboard Chipset Memory Disk Graphics Audio Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution Defaults nobarrier data=journal data=writeback nodelalloc discard Intel Core i7 720Q @ 1.60GHz (8 Cores) LENOVO 4318CTO Intel Core DMI 2 x 2048 MB DDR3-1066MHz 160GB INTEL SSDSA2M160 NVIDIA Quadro FX 880M 1024MB (405/324MHz) Conexant CX20585 Intel 82577LM Gigabit Connection + Intel Centrino Ultimate-N 6300 Ubuntu 12.10 3.5.0-17-generic (x86_64) Unity 6.8.0 X Server 1.13.0 nouveau 1.0.2 3.0 Mesa 9.0 Gallium 0.4 GCC 4.7 ext4 1600x900 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++,go,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 - Defaults: DEADLINE / data=ordered,relatime,rw - nobarrier: DEADLINE / data=ordered,nobarrier,relatime,rw - data=journal: DEADLINE / data=journal,nodelalloc,relatime,rw - data=writeback: DEADLINE / data=writeback,relatime,rw - nodelalloc: DEADLINE / data=ordered,nodelalloc,relatime,rw - discard: DEADLINE / data=ordered,discard,relatime,rw System Details - Disk Scheduler: DEADLINE. Python 2.7.3. Compiz was running on this system.
EXT4 File-System Mount Option Tuning compilebench: Initial Create tiobench: Rand Write - 64MB - 8 compilebench: Compile dbench: 1 tiobench: Rand Write - 64MB - 4 fio: Intel IOMeter File Server Access Pattern fs-mark: 1000 Files, 1MB Size fs-mark: 5000 Files, 1MB Size, 4 Threads fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size fs-mark: 1000 Files, 1MB Size, No Sync/FSync iozone: 1MB - 8GB - Read Performance iozone: 4Kb - 8GB - Read Performance iozone: 1MB - 8GB - Write Performance iozone: 4Kb - 8GB - Write Performance iozone: 64Kb - 8GB - Read Performance iozone: 64Kb - 8GB - Write Performance Defaults nobarrier data=journal data=writeback nodelalloc discard 96.33 95.91 104.02 243.27 95.38 102.98 81.13 97.47 80.90 146.70 194.91 204.51 99.63 99.73 215.91 101.14 97.18 94.47 105.63 257.32 95.53 102.89 82.03 98.53 82.27 148.97 224.41 225.74 103.65 103.26 222.02 103.28 23.70 41.55 31.38 112.29 16.69 351.70 40.77 40.97 38.73 48.43 251.24 251.85 46.23 39.99 251.36 42.60 110.65 95.40 106.80 247.92 94.67 103.19 81.73 98.13 81.47 146.92 233.45 234.67 101.30 101.08 234.02 101.33 102.69 94.03 106.10 125.75 94.60 104.71 71.23 93.47 70.73 147.73 222.63 227.33 101.64 102.32 226.18 102.09 105.73 96.01 106.92 182.42 95.97 103.88 80.57 96.40 78.33 146.17 239.02 237.69 101.84 101.81 237.06 101.46 OpenBenchmarking.org
Compile Bench Test: Initial Create OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.70, N = 3 SE +/- 0.74, N = 3 SE +/- 3.47, N = 3 SE +/- 3.82, N = 3 SE +/- 1.96, N = 3 SE +/- 3.59, N = 3 96.33 23.70 110.65 105.73 97.18 102.69
Threaded I/O Tester Test: Random Write - Size Per Thread: 64MB - Thread Count: 8 OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 64MB - Thread Count: 8 Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.19, N = 4 SE +/- 6.11, N = 8 SE +/- 0.16, N = 4 SE +/- 0.31, N = 4 SE +/- 0.77, N = 4 SE +/- 1.23, N = 6 95.91 41.55 95.40 96.01 94.47 94.03
Compile Bench Test: Compile OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Compile Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 1.18, N = 3 SE +/- 0.26, N = 3 SE +/- 0.94, N = 3 SE +/- 1.52, N = 3 SE +/- 1.15, N = 3 SE +/- 0.59, N = 3 104.02 31.38 106.80 106.92 105.63 106.10
Dbench Client Count: 1 OpenBenchmarking.org MB/s, More Is Better Dbench 4.0 Client Count: 1 Defaults data=journal data=writeback discard nobarrier nodelalloc 60 120 180 240 300 SE +/- 1.72, N = 3 SE +/- 0.18, N = 3 SE +/- 3.16, N = 3 SE +/- 0.47, N = 3 SE +/- 2.57, N = 3 SE +/- 0.11, N = 3 243.27 112.29 247.92 182.42 257.32 125.75 1. (CC) gcc options: -lpopt
Threaded I/O Tester Test: Random Write - Size Per Thread: 64MB - Thread Count: 4 OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 64MB - Thread Count: 4 Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.57, N = 4 SE +/- 3.71, N = 8 SE +/- 0.62, N = 4 SE +/- 1.01, N = 4 SE +/- 0.70, N = 4 SE +/- 0.20, N = 4 95.38 16.69 94.67 95.97 95.53 94.60
Flexible IO Tester Test: Intel IOMeter File Server Access Pattern OpenBenchmarking.org Seconds (Run Time), Fewer Is Better Flexible IO Tester 1.57 Test: Intel IOMeter File Server Access Pattern Defaults data=journal data=writeback discard nobarrier nodelalloc 80 160 240 320 400 SE +/- 0.26, N = 3 SE +/- 0.86, N = 3 SE +/- 0.08, N = 3 SE +/- 0.60, N = 3 SE +/- 0.04, N = 3 SE +/- 0.18, N = 3 102.98 351.70 103.19 103.88 102.89 104.71
FS-Mark Test: 1000 Files, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 1.19, N = 3 SE +/- 0.37, N = 3 SE +/- 0.85, N = 3 SE +/- 0.97, N = 3 SE +/- 1.04, N = 3 SE +/- 0.47, N = 3 81.13 40.77 81.73 80.57 82.03 71.23 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 Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.13, N = 3 SE +/- 0.12, N = 3 SE +/- 0.13, N = 3 SE +/- 0.80, N = 3 SE +/- 0.13, N = 3 SE +/- 0.74, N = 3 97.47 40.97 98.13 96.40 98.53 93.47 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 Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.00, N = 3 SE +/- 0.47, N = 3 SE +/- 0.09, N = 3 SE +/- 1.24, N = 4 SE +/- 0.09, N = 3 SE +/- 0.03, N = 3 80.90 38.73 81.47 78.33 82.27 70.73 1. (CC) gcc options: -static
FS-Mark Test: 1000 Files, 1MB Size, No Sync/FSync OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size, No Sync/FSync Defaults data=journal data=writeback discard nobarrier nodelalloc 30 60 90 120 150 SE +/- 1.82, N = 3 SE +/- 0.03, N = 3 SE +/- 2.15, N = 5 SE +/- 1.11, N = 3 SE +/- 1.87, N = 3 SE +/- 0.27, N = 3 146.70 48.43 146.92 146.17 148.97 147.73 1. (CC) gcc options: -static
IOzone Record Size: 1MB - File Size: 8GB - Disk Test: Read Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 1MB - File Size: 8GB - Disk Test: Read Performance Defaults data=journal data=writeback discard nobarrier nodelalloc 50 100 150 200 250 SE +/- 3.72, N = 3 SE +/- 0.06, N = 3 SE +/- 1.13, N = 3 SE +/- 1.19, N = 3 SE +/- 1.63, N = 3 SE +/- 3.49, N = 4 194.91 251.24 233.45 239.02 224.41 222.63 1. (CC) gcc options: -O3
IOzone Record Size: 4Kb - File Size: 8GB - Disk Test: Read Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 4Kb - File Size: 8GB - Disk Test: Read Performance Defaults data=journal data=writeback discard nobarrier nodelalloc 60 120 180 240 300 SE +/- 1.33, N = 3 SE +/- 0.07, N = 3 SE +/- 0.86, N = 3 SE +/- 1.98, N = 3 SE +/- 1.20, N = 3 SE +/- 0.38, N = 3 204.51 251.85 234.67 237.69 225.74 227.33 1. (CC) gcc options: -O3
IOzone Record Size: 1MB - File Size: 8GB - Disk Test: Write Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 1MB - File Size: 8GB - Disk Test: Write Performance Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.26, N = 3 SE +/- 0.29, N = 3 SE +/- 0.17, N = 3 SE +/- 0.20, N = 3 SE +/- 0.67, N = 3 SE +/- 0.22, N = 3 99.63 46.23 101.30 101.84 103.65 101.64 1. (CC) gcc options: -O3
IOzone Record Size: 4Kb - File Size: 8GB - Disk Test: Write Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 4Kb - File Size: 8GB - Disk Test: Write Performance Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.42, N = 3 SE +/- 1.99, N = 6 SE +/- 0.07, N = 3 SE +/- 0.27, N = 3 SE +/- 0.32, N = 3 SE +/- 0.49, N = 3 99.73 39.99 101.08 101.81 103.26 102.32 1. (CC) gcc options: -O3
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance Defaults data=journal data=writeback discard nobarrier nodelalloc 50 100 150 200 250 SE +/- 13.59, N = 6 SE +/- 0.11, N = 3 SE +/- 0.65, N = 3 SE +/- 1.71, N = 3 SE +/- 1.88, N = 3 SE +/- 0.24, N = 3 215.91 251.36 234.02 237.06 222.02 226.18 1. (CC) gcc options: -O3
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance Defaults data=journal data=writeback discard nobarrier nodelalloc 20 40 60 80 100 SE +/- 0.31, N = 3 SE +/- 0.59, N = 3 SE +/- 0.09, N = 3 SE +/- 0.25, N = 3 SE +/- 0.57, N = 3 SE +/- 0.12, N = 3 101.14 42.60 101.33 101.46 103.28 102.09 1. (CC) gcc options: -O3
Phoronix Test Suite v10.8.4