Test plan for Ext4


Author : Mingming Cao
2005/09/13
Version 1.1

Revision history


Version number
Date of revision
Document status
1.0
March 1st, 2005
Initial document
1.1
March 25th, 2005
Updated (Jean-Pierre Dion) :
- Renumbered chapters to remove duplicate number 4.10.
- Complementary tests (chapters 4.17 to 4.19).
1.2
September 13th, 2005
Modifications are highlighted in green. Updated (Jean-Pierre Dion) :
- Scalability test (chapter 3),
- Tests for multi block allocation patch (chapter 5.5),
- Tests for delayed allocation patch (chapter 5.6),
- Tests for 64 bit support patch (chapter 5.7).



Testing plan to check improvement and regression on ext4 is detailed below.

1. Base kernel level : on 2.6.10 kernel


2. Interested Filesystem/mount options:


2.1 Base ext3 filesystem (reservation default is on in 2.6.10) :


2.2 Evaluate if there is any regression on reservation changes



2.3 For extents, delayed allocation, multiblock allocation


2.4 For comparing with other filesystem



3 Functionality test


3.1. Scalability test

Scalability tests should be done with various configurations :

4 Performance test


4.1 FSB

http://ausgsa.ibm.com/projects/l/ltcperformance/2003benchmarks/ffsb/

4.2 tiobench -- good tests for sequantial/random read/write


4.3 dbench -- heavy meta data workload


4.4 dd tests -- simple quick tests for sequential write/read


4.5 big file create/delete tests -- a simple scripts will do(need code up)


4.6 bonnie ++ --- this will create large and small files


4.7 iozone


4.8 postmark


4.9 AIM


4.10 Lmbench --- the filesystem microbenchmarks


4.11 sysbench


4.12 ssh buildbenchmark/or kernel build benchmark


4.13 Karl Swartz's Netnews benchmark [2].


4.14 Pgmeter


4.15 Filemark

http://www.usenix.org/events/usenix02/tech/freenix/full_papers/bryant/bryant_html

4.16 Samba 4 --- to test the EA in inode patch --- we need to talk to Tridge about this


4.17 sqlbench


4.18 mongo


4.19 Other tests


5 We would like to run all above tests on all patches. We can do it sometimes, but some tests are probably more useful to some patches :


5.1 For extents:

4.1 FSB
4.2 tiobench
4.3 dbench
4.4 dd tests
4.5 big file create/delete tests

5.2 For the EA-in-inode patch,

4.6 Bonnie++
4.11 SSh buildbenchmark
4.15 Samba 4 (4.15)

5.3 For large cpu scalability

4.8 Postmark
4.14 Filemark

5.4 For reservation patch:

4.1 FSB
4.2 tiobench
4.3 dbench
4.4 dd tests

5.5 For multi blocks allocation patch(es)

TBD

5.6 For delayed allocation patch(es)

TBD

5.7 For 64 bit support patches

TBD