Flash Filesystem Benchmarks

Free Electrons has performed flash filesystem benchmarks, with funding from the CE Linux Forum. This page is the starting page to present the methodology and the results of these benchmarks.

Test methodology
Free Electrons created Python scripts that automate the execution of commands through a serial line (including bootloader and kernel booting), and measure the time taken to execute these commands. The scripts were designed to be generic, and support for new boards can easily be added by creating board specific Python definitions. The complete details of what tests are performed and how measurements are made are available in the Flash Filesystem Benchmarks Protocol page.

The current version of these scripts can be found in a Git repository on gitorious, and are released under the terms of the GPLv2 license. Working board automation files are provided for the CALAO USB-A9263-C02 and IGEPv2 boards. You will need to build a root filesystem to run the tests on and create filesystems of different sizes (8, 32, 252 and 508 MB) to be tested ; both of which that have been used by Free Electrons will be available soon.

Comparison of different versions of the Kernel
See Flash Filesystem Benchmarks Kernel Evolution to find possible regressions

Linux 3.1 results
See Flash Filesystem Benchmarks 3.1 for the results

Linux 3.0 results
See Flash Filesystem Benchmarks 3.0 for the results

Linux 2.6.39 results
See Flash Filesystem Benchmarks 2.6.39 for the results

Linux 2.6.38 results
See Flash Filesystem Benchmarks 2.6.38 for the results

Linux 2.6.36 results
See Flash Filesystem Benchmarks 2.6.36 for the results

Presentations of the results
Previous results of those benchmarks were presented:
 * At ELC Europe 2010, the [[Media:elce2010-flash-filesystems.pdf | slides (PDF)]] are available
 * At ELC Europe 2008, the [[Media:Flash-filesystems.pdf|slides (PDF)]] are available

Details on the hardware platforms used

 * CALAO USB-A9263-C02
 * AT91SAM9263 processor at 200 Mhz
 * 64 MB of RAM
 * 256 MB of NAND Flash from Samsung K9F2G08U0A
 * IGEPv2 boards
 * DM3730 processor at 1 Ghz
 * 512 MB of RAM
 * 512 MB of dual-plane SLC OneNAND Flash from Numonyx NAND04GR4E1A