Not logged in
Log in now
Create an account
Subscribe to LWN
LWN.net Weekly Edition for May 16, 2013
A look at the PyPy 2.0 release
PostgreSQL 9.3 beta: Federated databases and more
LWN.net Weekly Edition for May 9, 2013
(Nearly) full tickless operation in 3.10
I have a Dell laptop with an early flash drive. Performance is sometimes awful and I always suspected the drive. (It is still quiet, which is appreciated.)
So I should reformat it as FAT to have any hope of a speed-up?
Optimizing Linux with cheap flash drives
Posted Feb 18, 2011 22:39 UTC (Fri) by jengelh (subscriber, #33263)
Posted Feb 19, 2011 5:00 UTC (Sat) by eru (subscriber, #2753)
Just resurrect the UMSDOS filesystem!
Posted Feb 19, 2011 8:41 UTC (Sat) by arnd (subscriber, #8866)
Unfortunately, their implementation has a lot of other performance problems and, worse, it's not even available under a GPL compatible license.
Posted Feb 22, 2011 17:34 UTC (Tue) by ttonino (subscriber, #4073)
On the NAND flash with a software translation layer:
/ rootfs ro,relatime
/mnt/.lfs j4fs rw,relatime
/system rfs ro,relatime
/dbdata rfs rw,relatime
/cache rfs rw,relatime
On the internal SD device:
/data rfs rw
/mnt/sdcard vfat rw,dirsync,noatime,nodiratime
/mnt/sdcard/external_sd vfat rw,dirsync,noatime,nodiratime
Thus, rfs and normal vfat are both used. The rfs description reminded me of the phase tree FAT implementation that was going around a long time ago.
The software translation for the NAND flash is GPL.
Posted Feb 18, 2011 23:26 UTC (Fri) by bronson (subscriber, #4806)
Posted Feb 23, 2011 12:11 UTC (Wed) by alex (subscriber, #1355)
Posted Feb 24, 2011 16:14 UTC (Thu) by mgedmin (subscriber, #34497)
I'm guessing 63 sectors (of 512 bytes) is not a good alignment?
Are there any tools for fixing partition alignment? Does parted's "move" command shift the data in the partition, or just adjust the boundaries in the partition table?
Posted Feb 24, 2011 18:53 UTC (Thu) by meyering (guest, #48285)
For example, here all partitions are MiB-aligned, except
for the first one, which is only 32KiB-aligned. But since it's
only for grub, that is ok:
$ parted -m -s -- /dev/sdb u s p free
Please do not use parted's "move" command. It is risky since it tries
to be smart and is file-system aware. In addition to moving the partition
it may try to move an embedded file system, too, but its built-in FS-aware
code is so old and unreliable that it is slated to be removed altogether.
If you try to use that sub-command (or e.g., mkpartfs which is in the same
boat), recent versions of parted will emit a big warning telling you some
of the above.
Posted Feb 25, 2011 0:15 UTC (Fri) by jnh (subscriber, #69758)
I recommend reading Martin K. Petersen's advanced storage papers from
Posted Feb 19, 2011 8:29 UTC (Sat) by roblucid (subscriber, #48964)
There should be some good articles on SSD performance issues (mainly or wholly used with Windows but still should be relevant enough), and you could perhaps see if an SSD upgrade to more modern firmware, might be beneficial.
Posted Feb 19, 2011 8:31 UTC (Sat) by roblucid (subscriber, #48964)
Posted Feb 19, 2011 8:47 UTC (Sat) by arnd (subscriber, #8866)
Aligning the partition to 4 MB and changing to btrfs solved it for me for that card. I have not yet done thorough testing to find out what the specific requirements of the possible file systems are, but it's worth a try.
I'd also be interested to see what flashbench shows about this drive. If you can create an empty 4 MB aligned partition on it, please run it and send the results to firstname.lastname@example.org.
Posted Feb 19, 2011 10:30 UTC (Sat) by aleXXX (subscriber, #2742)
Posted Feb 19, 2011 10:40 UTC (Sat) by arnd (subscriber, #8866)
High-end SSDs come with significant amounts of RAM that can be used to hide most of the nasty effects, or to do something much smarter altogether, such as implementing the entire drive as a log structured file.
The caching unfortunately makes it a lot harder to reverse-engineer the drive through timing attacks, so it's much harder to tell what it really does.
What we know is that the underlying NAND flash technology is very similar, so in the best case, an SSD will be able to hide the problems, but not completely avoid them. If I were to design an SSD controller, I'd do the same things that I'm suggesting in https://wiki.linaro.org/WorkingGroups/KernelConsolidation...
Posted Feb 19, 2011 18:23 UTC (Sat) by aleXXX (subscriber, #2742)
Actually I can remember that when writing to raw NAND we had also rates somewhere in the 10 to 15 MB/s range.
Posted Feb 19, 2011 20:03 UTC (Sat) by arnd (subscriber, #8866)
* SATA is a much faster interface than SD/MMC
* NCQ and write caching allows optimizing the accesses by reordering and batching NAND flash accesses
* Using SLC NAND instead of MLC improves raw accesses
* Using multiple NAND chips in parallel gives a better combined throughput
* Expensive microcontrollers on the drive can use smarter algorithms
All of these cost money, so you don't find them on the low end drives that I analyzed.
Posted Feb 20, 2011 9:12 UTC (Sun) by alonz (subscriber, #815)
Posted Apr 6, 2011 18:36 UTC (Wed) by taggart (subscriber, #13801)
Posted Apr 20, 2011 19:12 UTC (Wed) by dmarti (subscriber, #11625)
Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds