View Single Post
Posts: 167 | Thanked: 204 times | Joined on Jul 2010
#1
With a bunch of new 64GB cards on the market, it would be nice to share some comparable benchmarks on how different microSD cards actually perform in the N900. This thread seeks first to define what is a useful, comparable benchmark, then to propose a standardised, non-destructive benchmarking method using tools available on the N900, and finally to ask users to contribute some benchmarks.

Criteria for simple but useful benchmarking

We seek to test the performance of a given microSD card under common and comparable conditions, which should also be non-destructive and readily accessible to a majority of users. That means no repartitioning, so for the purposes of this comparison we'll have to be content to benchmark the performance of a FAT32 file system on our microSD. This can still yield good comparative data, if done under controlled conditions, and maybe a separate thread is in order for benchmarking non-standard configurations?

Testing should take place under Maemo 5 on the N900 itself, and not introducing USB, Ethernet, WiFi or any other corrupting factors such as a host computer or operating system. This implies using one of the standard filesystem benchmarking tools available for the N900, probably either bonnie++ or iozone. I'm playing with both at the moment and I would welcome informed argument in favour of either one.

But, so far, it looks like we're talking about performing a bonnie++ benchmark under at least vaguely controlled conditions, then combining this with sufficient information about the microSD card being tested as to form a credible, comparable report. Opinions invited as to what information you'd want included in such a report for it to be "useful".

Proposed testing & reporting methods

Merely running bonnie++ against a FAT32 filesystem on a microSD card in an N900 should yield some useful data if enough people will oblige, however, there's no control for variations in CPU speed or filesystem fragmentation. What non-invasive actions should we sensibly take in the way of controlling our environment before running the benchmark? In particular, should we lock the CPU speed (to 600MHz) when we detect kernel-power, or should we just assume that the users we care about will (mostly) be running 900MHz + SmartReflex?

Also, the resultant report is only useful if it contains enough information to have some faith in the identification and the authenticity of the microSD card and to explain any anomalies. What information should we collect and report along with the benchmark?

I'm not going to post up a test script or benchmark output just yet, but I'd welcome input as to what to test and how to test it with a view to throwing together a simple script that others could use against different microSD cards to produce useful results. My thinking at the moment is to base the testing on bonnie++ and grab the SD card information from lshal; what else do we need?

When I've thrown a provisional script together I'll test my current Sandisk 16GB class 2 as a standard against which to compare...
 

The Following 4 Users Say Thank You to magick777 For This Useful Post: