Why do sd cards with good benchmark readings go slow in the Pi, and vice versa? This is the impression I had with my sd cards, so to check this out I wrote an identical Raspbian image onto three different sd cards and timed their performances. I measured their boot times (from power-up to the lxde desktop appearing), their times to load Abiword, and their shutdown times. The results are shown below, together with their benchmark timings using hdparm -tT /dev/mmcblk0.
Sandisk SDHC Class 4 Card
Benchmarks: cached reads 173.47 MB/sec, buffered disk reads 10.57 MB/sec
Boot up time: 35 secs
Abiword load time: 13 secs
Shutdown time: 10 secs
Integral Ultima SDHC Class 10 Card (claims "up to 20 MB/sec")
Benchmarks: cached reads 181.10 MB/sec, buffered disk reads 18.91 MB/sec
Boot up time: 63 secs
Abiword load time: 13 secs
Shutdown time: 45 secs
Sandisk Ultra SDHC Class 10 Card (claims 30 MB/sec)
Benchmarks: cached reads 181.80 MB/sec, buffered disk reads 20.04 MB/sec
Boot up time: 30 secs
Abiword load time: 13 secs
Shutdown time: 10 secs
So the Sandisk Class 4 card, with a disk read benchmark almost half that of the two Class 10 cards, performed considerably better than the Integral Class 10 card and almost as well as the Sandisk Class 10 card. So do the benchmarks tell us anything about the actual performance of sd cards in the Pi?
As an aside, I have a 4-year old Transcend sd card (it's not SDHC and it has no class number printed on it), which performs really well. It has "133x" printed on the label, implying that it should be fast, and indeed its buffered disk read timings are almost the same as those of the Sandisk Ultra card above. This old card boots up Raspbian+lxde in 37 seconds. I did not include it in the above list as it does not have an identical image - it has Raspbian with Tomaz's XBMC + LXDE, which run really well on it.