Filesystem Comparison Benchmarks

From LQWiki
Jump to: navigation, search

This document presents information about filesystems and their test results.

Overview of the Filesystems

  • Ext2 was originally released in January 1993.
  • Ext3 adds journalling to Ext2 so that an fsck does not need to be performed during startup in the event of an unclean shutdown.
  • JFS is developed by IBM. JFS is a stable and high performance filesystem that provides fast filesystem restart in the event of a system crash.
  • XFS is a high performance journaling filesystem which originated on the SGI IRIX platform. It can support large files and large filesystems, extended attributes, variable block sizes, is extent based, and makes extensive use of Btrees (directories, extents, free space) to aid both performance and scalability. Also see http://oss.sgi.com/projects/xfs/.

Benchmark Utillities

In this section the Bonnie benchmark will be shown. Bonnie is a program that plays with filesystem bottlenecks. At this point with this tests suite can be achieved different sides of the testing filesystem and its bottlenecks. With analysis of the report made by Bonnie it can find out where the filesystem has strong and weak sides.

For an explanation of the numbers below, see bonnie.

Benchmark Test Results

Creating the filesystem with

mkfs.ext2 -b 1024

The used Bonnie options were -s 256. The used mount options for local fs were rw,noexec,nosuid,nodev,user=hydraj.

Ext2 Filesystem with Block Size = 1024

In followed report are included date, mount options, and report from bonnie benchmark. Included are test file size and number of processes used in parallel too.

120 processes

Tue Jan  7 16:56:48 EST 2003

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M 10540  97 27198  19  8403   7  6446  61 33141  16  92.9   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  1074  98 +++++ +++ +++++ +++  1087  98 +++++ +++  2679  99
hackmachine,256M,10540,97,27198,19,8403,7,6446,61,33141,16,92.9,0,16,1074,98,+++++,+++,+++++,+++,1087,98,+++++,+++,2679,99

JFS Filesystem

Thu Jan  9 14:49:47 EST 2003
/dev/hda6 on / type ext3 (rw)

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M  6767  68  9306   7  4958   3  5417  52 24148   9  82.6   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16   751  92 +++++ +++ +++++ +++   786  92 +++++ +++  1973  92
hackmachine,256M,6767,68,9306,7,4958,3,5417,52,24148,9,82.6,0,16,751,92,+++++,+++,+++++,+++,786,92,+++++,+++,1973,92

120 processes

Thu Jan  9 15:32:07 EST 2003

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M 10602  95 24806  11 11108   5  6269  58 33715  11  97.5   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  6623  27 +++++ +++  4849  24  3236  39 +++++ +++   224   1
hackmachine,256M,10602,95,24806,11,11108,5,6269,58,33715,11,97.5,0,16,6623,27,+++++,+++,4849,24,3236,39,+++++,+++,224,1

XFS Filesystem Default Configuration

formatting

Used Options : mkfs.xfs /dev/hda1
meta-data=/dev/hda1              isize=256    agcount=8, agsize=95385 blks
data     =                       bsize=4096   blocks=763079, imaxpct=25
         =                       sunit=0      swidth=0 blks, unwritten=0
naming   =version 2              bsize=4096
log      =internal log           bsize=4096   blocks=1200
realtime =none                   extsz=65536  blocks=0, rtextents=0

benchmarking

Thu Jan  9 16:14:57 EST 2003

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M  9901  90 27556  13  7605   4  8010  72 31801  11  86.8   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  1268  26  2271   7   655  12  1208  28 11361  32   375   8
hackmachine,256M,9901,90,27556,13,7605,4,8010,72,31801,11,86.8,0,16,1268,26,2271,7,655,12,1208,28,11361,32,375,8

120 processes

Thu Jan  9 16:24:48 EST 2003

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M  3897  37 11415   5  3259   2  4334  43 26406  11  87.0   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  1475  33 18001  36  1191  22   713  17  3238  12   437  10
hackmachine,256M,3897,37,11415,5,3259,2,4334,43,26406,11,87.0,0,16,1475,33,18001,36,1191,22,713,17,3238,12,437,10

XFS Filesystem with AGcount=120 block size=4096, isize=256

formatting

***********************************************
Used Options : 2 mkfs.xfs -bsize=4096 -bsize=4096 -isize=256 /dev/hda1
***********************************************
Used Options : 2 mkfs.xfs -f -f -dagcount=120 -isize=256 /dev/hda1
meta-data=/dev/hda1              isize=256    agcount=120, agsize=6359 blks
data     =                       bsize=4096   blocks=763079, imaxpct=25
         =                       sunit=0      swidth=0 blks, unwritten=0
naming   =version 2              bsize=4096
log      =internal log           bsize=4096   blocks=1200
realtime =none                   extsz=65536  blocks=0, rtextents=0
***********************************************

benchmarking

Thu Jan  9 17:40:37 EST 2003

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M 10694  96 26010  12  9156   5  8086  73 33316  12  94.7   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  1422  27 +++++ +++  1364  20  1511  29 +++++ +++   450   8
hackmachine,256M,10694,96,26010,12,9156,5,8086,73,33316,12,94.7,0,16,1422,27,+++++,+++,1364,20,1511,29,+++++,+++,450,8

120 processes

Thu Jan  9 17:45:52 EST 2003

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M 10770  97 28078  14 10900   6  6819  64 33178  12  94.9   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  1422  28 +++++ +++  1331  20  1468  29 +++++ +++   437   8
hackmachine,256M,10770,97,28078,14,10900,6,6819,64,33178,12,94.9,0,16,1422,28,+++++,+++,1331,20,1468,29,+++++,+++,437,8

MS-DOS Filesystem with Block Size = 1024

Wed Jan  8 15:21:08 EST 2003

Version 1.02b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hackmachine    256M  8000  75 11596   7  5608  12  5893  56 12691  11  93.7  22
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16    26  99    58  97   305  99    39  93    55  90    53  91
hackmachine,256M,8000,75,11596,7,5608,12,5893,56,12691,11,93.7,22,16,26,99,58,97,305,99,39,93,55,90,53,91

smbfs

2009-10-07

This test ran on the same computer as the nfs test from 2009-10-07, and allows for comparing smbfs and nfs.

# bonnie -s 256
Bonnie 1.4: File './Bonnie.31813', size: 268435456, volumes: 1
Writing with putc()...         done:  42494 kB/s  86.4 %CPU
Rewriting...                   done: 147842 kB/s  35.4 %CPU
Writing intelligently...       done: 197509 kB/s  43.4 %CPU
Reading with getc()...         done:  52250 kB/s  76.5 %CPU
Reading intelligently...       done: 2612375 kB/s  99.7 %CPU
                                 start 'em...done...done...done...
              ---Sequential Output (nosync)--- ---Sequential Input-- --Rnd Seek-
              -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --04k (03)-
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU   /sec %CPU
       1* 256 42494 86.4197509 43.4 147842 35.4 52250 76.52612375 99.7 10830.7 30.3

NFS

2009-10-07

This test ran on the same computer as the smbfs test from 2009-10-07, and allows for comparing smbfs and nfs.

# bonnie -s 256
Bonnie 1.4: File './Bonnie.31887', size: 268435456, volumes: 1
Writing with putc()...         done:  31835 kB/s  40.7 %CPU
Rewriting...                   done:  63847 kB/s   9.0 %CPU
Writing intelligently...       done:  51256 kB/s   4.8 %CPU
Reading with getc()...         done:  82025 kB/s 100.0 %CPU
Reading intelligently...       done: 3003001 kB/s 100.8 %CPU
Seeker 1...Seeker 3...Seeker 2...start 'em...done...done...done...
              ---Sequential Output (nosync)--- ---Sequential Input-- --Rnd Seek-
              -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --04k (03)-
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU   /sec %CPU
tweedl 1* 256 31835 40.7 51256  4.8 63847  9.0 82025  1003003001  101 8961.9 12.5

EXT3

2009-10-08

This test ran on the same computer as the smbfs test from 2009-10-07, and allows for determining the network overhead.

# bonnie -s 256
Bonnie 1.4: File './Bonnie.23294', size: 268435456, volumes: 1
Writing with putc()...         done:  63279 kB/s  95.1 %CPU
Rewriting...                   done: 1208710 kB/s  99.6 %CPU
Writing intelligently...       done: 420375 kB/s  85.3 %CPU
Reading with getc()...         done:  77738 kB/s 100.0 %CPU
Reading intelligently...       done: 2756132 kB/s 100.9 %CPU
Seeker 1...Seeker 2...Seeker 3...start 'em...done...done...done...
              ---Sequential Output (nosync)--- ---Sequential Input-- --Rnd Seek-
              -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --04k (03)-
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU   /sec %CPU
tweedl 1* 256 63279 95.1420375 85.3 1208710 99.6 77738  1002756132  101 7136.8  9.3

See also