IOzone
From UBIFSWiki
Contents |
[edit]
Standard IOzone results
[edit]
Raw numbers
| E1-nand (ubifs) | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008-05-07 | 14757.04 | 15988.64 | 89915.14 | 88476.95 | 85654.39 | 22554.46 | 86467.29 | 70231.27 | 108683.59 | 13404.05 | 14653.98 | 82919.68 | 82090.41 |
| 2008-01-07 | 15206.77 | 16341.02 | 95747.41 | 96297.55 | 89498.02 | 23079.95 | 91888.48 | 85519.46 | 106102.73 | 13746.20 | 14948.41 | 87994.25 | 88546.23 |
| 2007-09-30 | 14781.39 | 16045.20 | 91985.68 | 93864.02 | 87122.68 | 22836.71 | 89284.57 | 92008.88 | 106433.05 | 13265.18 | 14542.54 | 84860.77 | 85831.93 |
| 2007-09-06 | 15781.25 | 16747.11 | 98281.68 | 100172.59 | 89655.04 | 23707.32 | 93993.05 | 92325.05 | 111272.14 | 14227.52 | 15173.61 | 88548.64 | 89817.41 |
| E1-nand (jffs2) | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008-05-07 (lzo) | 8943.36 | 15070.86 | 98397.27 | 96623.05 | 93201.11 | 14891.95 | 94104.32 | 16504.5 | 115280.21 | 8112.84 | 13300.84 | 91458.64 | 90504.75 |
| 2008-01-07 (lzo) | 14216.66 | 14488.73 | 99825.66 | 100545.11 | 94937.13 | 14429.05 | 95738.80 | 15906.05 | 111587.41 | 12539.30 | 12682.34 | 92826.05 | 92366.27 |
| 2007-09-30 (lzo) | 14488.45 | 14639.02 | 93298.75 | 93986.41 | 89113.50 | 14652.46 | 88956.00 | 16350.50 | 110090.32 | 12680.89 | 12884.71 | 87321.07 | 87633.90 |
| 2007-09-06 (zlib) | 5691.29 | 5859.84 | 93884.61 | 95687.70 | 89807.88 | 5732.34 | 90106.93 | 6070.59 | 111383.23 | 5248.04 | 5429.95 | 85995.21 | 87312.23 |
| E1-nand (logfs) | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007-09-06 | 864.41 | 769.75 | 1389.91 | 37950.02 | 38096.12 | 794.12 | 38240.77 | 1247.71 | 38494.89 | 833.20 | 756.86 | 1506.07 | 83728.02 |
| E2-nand (ubifs) | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008-06-12 (lzo) | 8598.14 | 8795.11 | 46797.26 | 51414.96 | 57356.98 | 17251.91 | 70181.78 | 77342.41 | 80571.10 | 12373.30 | 11382.38 | 63279.83 | 64605.15 |
| 2008-01-07 (zlib) | 1448.86 | 1809.82 | 121303.54 | 122384.38 | 118210.61 | 2677.45 | 117994.48 | 43197.45 | 133825.59 | 1836.34 | 1860.84 | 121904.57 | 123217.34 |
| 2008-01-07 (lzo) | 8248.32 | 8824.30 | 65679.27 | 69716.50 | 72205.11 | 14994.57 | 85978.57 | 66614.88 | 94434.07 | 11022.63 | 10791.98 | 83515.07 | 83728.38 |
| E2-nand (jffs2) | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008-01-07 (zlib) | 3280.73 | 3840.36 | 85578.89 | 87781.70 | 86712.39 | 4176.63 | 84289.25 | 4208.52 | 98283.57 | 4040.11 | 4030.96 | 88409.63 | 90057.98 |
| 2008-01-07 (lzo) | 7007.45 | 7237.89 | 56636.55 | 61106.80 | 66770.48 | 9637.32 | 70767.95 | 9655.32 | 75656.84 | 7752.34 | 7359.27 | 59233.23 | 62696.73 |
[edit]
Relative results (ratio)
| E1-nand | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008-05-07 | 1.65 | 1.06 | 0.91 | 0.92 | 0.92 | 1.51 | 0.92 | 4.26 | 0.94 | 1.65 | 1.10 | 0.91 | 0.91 |
| 2008-01-07 | 1.07 | 1.13 | 0.96 | 0.96 | 0.94 | 1.60 | 0.96 | 5.38 | 0.95 | 1.10 | 1.18 | 0.95 | 0.96 |
| 2007-09-30 | 1.02 | 1.10 | 0.99 | 1.00 | 0.98 | 1.56 | 1.00 | 5.63 | 0.97 | 1.05 | 1.13 | 0.97 | 0.98 |
| 2007-09-06 | 1.09 | 1.14 | 1.05 | 1.07 | 1.01 | 1.62 | 1.06 | 5.65 | 1.01 | 1.12 | 1.18 | 1.01 | 1.02 |
| E1-nand | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007-09-06 | 18.2567 | 21.7566 | 70.7108 | 2.6396 | 2.3534 | 29.8536 | 2.4579 | 73.9956 | 2.8906 | 17.0758 | 20.0481 | 58.7945 | 1.0727 |
| E2-nand | write | rewrite | read | reread | r.read | r.write | b.read | r.rewrt | s.read | fwrite | frewrite | fread | freread |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008-06-12 (lzo) | 1.23 | 1.22 | 0.83 | 0.84 | 0.86 | 1.79 | 0.99 | 8.01 | 1.06 | 1.60 | 1.55 | 1.07 | 1.03 |
| 2008-01-07 (zlib) | 0.44 | 0.47 | 1.42 | 1.39 | 1.36 | 0.64 | 1.40 | 10.26 | 1.36 | 0.45 | 0.46 | 1.38 | 1.37 |
| 2008-01-07 (lzo) | 1.18 | 1.22 | 1.16 | 1.14 | 1.08 | 1.56 | 1.21 | 6.90 | 1.25 | 1.42 | 1.47 | 1.41 | 1.34 |
[edit]
Brief descriptions
- Standard IOzone result:
- The raw numbers are in KByte/sec. The relative numbers denote magnitude of UBIFS relative to another FS.
- write: This test measures the performance of writing a new file. When a new file is written not only does the data need to be stored but also the overhead information for keeping track of where the data is located on the storage media.
- rewrite: This test measures the performance of writing a file that already exists. When a file is written that already exists the work required is less as the metadata already exists. It is normal for the rewrite performance to be higher than the performance of writing a new file.
- read: This test measures the performance of reading an existing file.
- reread: This test measures the performance of reading a file that was recently read. It is normal for the performance to be higher as the operating system generally maintains a cache of the data for files that were recently read. This cache can be used to satisfy reads and improves the performance.
- r.read: This test measures the performance of reading a file with accesses being made to random locations within the file. The performance of a system under this type of activity can be impacted by several factors such as: Size of operating system’s cache, number of disks, seek latencies, and others.
- r.write: This test measures the performance of writing a file with accesses being made to random locations within the file. Again the performance of a system under this type of activity can be impacted by several factors such as: Size of operating system’s cache, number of disks, seek latencies, and others.
- b.read: This test measures the performance of reading a file backwards.
- r.rewrt: This test measures the performance of writing and re-writing a particular spot within a file.
- s.read: This test measures the performance of reading a file with a strided access behavior. An example would be: Read at offset zero for a length of 4 Kbytes, then seek 200 Kbytes, and then read for a length of 4 Kbytes, then seek 200 Kbytes and so on. Here the pattern is to read 4 Kbytes and then seek 200 Kbytes and repeat the pattern. This again is a typical application behavior for applications that have data structures contained within a file and is accessing a particular region of the data structure. Most operating systems do not detect this behavior or implement any techniques to enhance the performance under this type of access behavior.
- fwrite: This test measures the performance of writing a file using the library function fwrite().
- frewrite: This test measures the performance of rewriting a file using the library function fwrite().
- fread: This test measures the performance of reading a file using the library function fread().
- freread: This test is the same as fread above except that in this test the file that is being read was read in the recent past.
- In the relative data the
- green and lightgreen values mean UBIFS is faster than the reference (at least 5%)
- red and pink values mean UBIFS is slower than the reference (at least 5%)
- black and gray values mean ratio is in 5% margin of error
- lightgreen, pink and gray values are obsolete
The full descriptions of the tests and other resources about the benchmark are available on IOzone website.
[edit]
Command line and settings
We used the following commands and settings to produce the results.
[edit]
Mount
- UBIFS
flash_eraseall /dev/mtdX # Only for clean fs modprobe ubi mtd=X ubimkvol -d 0 -n 0 -N ubifs -m # Only when flash_eraseall is executed modprobe ubifs mount -t ubifs ubi0:ubifs /mnt/mtdX
- JFFS2
flash_eraseall /dev/mtdX # Only for clean fs mount -t jffs2 /dev/mtdblockX /mnt/mtdX
- LOGFS
flash_eraseall /dev/mtdX # Only for clean fs mklogfs /dev/mtdX mount -t logfs mtdX /mnt/mtdX
[edit]
Execute tests
- IOzone test:
iozone -e -s 64 -s 128 -s 256 -s 512 -s 1024 -s 2048 -s 4096 -f /mnt/mtdX/iozone.test -b ~/iozone_result.wks -R

