Which file system and options for a SSD/flash disk ?

Hello,
after a proper research i need to ask for your experience about file systems on SSD/flash disk.
In case you don’t know, SSDs, solid state drives are hard disks, without real “disks”, made of flash memories. They are progressively becoming faster than legacy hard disk that are more fragile, heavier and more energy consuming. Though SSDs are more expensive, for the moment, they are already used in some macbook air, netbooks like eeePCs and on some new laptops.
I have read that windows’ ntfs is not efficient on SSDs because of its granularity.
I have read about logfs and ubifs (by nokia) that are file systems made for SSDs flash memories. Should i use these file systems if i install opensuse linux on an SSD ?
What options should i use ?
Has anyone already done it ?
Shall i prefer reiserfs or ext3 instead of logfs/ubifs ?
What options shall i use with reiserfs/ext3 ?
What is your advice ?
Thank you.

Christophe deR wrote:
> Hello,
> after a proper research i need to ask for your experience about file
> systems on SSD/flash disk.
> In case you don’t know, SSDs, solid state drives are hard disks,
> without real “disks”, made of flash memories. They are progressively
> becoming faster than legacy hard disk that are more fragile, heavier and
> more energy consuming. Though SSDs are more expensive, for the moment,
> they are already used in some macbook air, netbooks like eeePCs and on
> some new laptops.
> I have read that windows’ ntfs is not efficient on SSDs because of its
> granularity.
> I have read about logfs and ubifs (by nokia) that are file systems made
> for SSDs flash memories. Should i use these file systems if i install
> opensuse linux on an SSD ?

These file systems are not part of Linux. If you think trying to setup a system
with out-of-kernel graphics drivers, out-of-kernel file systems is likely 2
orders of magnitude worse.

> What options should i use ?
> Has anyone already done it ?

Try googling for ‘Linux SSD filesystems’ In particular look at
http://robert.penz.name/137/no-swap-partition-journaling-filesystem-on-a-ssd/.

> Shall i prefer reiserfs or ext3 instead of logfs/ubifs ?

I will never use reiserfs again on a new system and I’m gradually converting all
my old ones to ext3. Only one partition left. Why? The main reason is that
relatively few people use reiserfs and some really severe bugs make it through
the kernel testing process and are not found until a new kernel is released.
That does not happen with ext3.

> What options shall i use with reiserfs/ext3 ?

The URL posted above has some recommended options.

Larry

Personally I just use ext3 on my SSD drive in my Aspire One and it works completely fine.

Some people recommend disabling the journaling (making it an ext2 file system) but I like journaling.

You definitely don’t need swap though, just run with enough memory so you don’t need it.

Also, set the elevator to noop (elevator=noop) as a kernel boot option.

Of course in a perfect world I would love to use ZFS - IMHO the best file system available, but it is not supported in the kernel - yet. (I am hopeful that will change.)

ReiserFS - would not recommend it. I don’t have a lot of experience with it, but what I do is unpleasant. Not too sure what the future of it will be either, but hey - some people swear by it.

Honestly, there is little reason to use other than ext3 - make it easy for yourself :slight_smile:

Pete

No, ubifs is in linux kernel since version 2.6.27 .
Has anyone tried it on an SSD ?

Anyway, i’d like to thank you for your input, LewsTherinTelemon and lwfinger .

@ lwfinger > have you used a ssd already ? With which fs ?

@ LewsTherinTelemon > Have you stated any effect of this elevator=noop kernel option ? Could you develop ?

Any other input is welcome…

The main developer of ReiserFS was convicted of murdering his wife and likely going to jail. Since development and support will be hampered, you may not want to use it. My hard disk home partition is formatted ReiserFS, and I’m not happy with the access times of several seconds I get now for large directories.

ubifs came up in another thread recently. Apparently it’s not designed to be used on top of SSD’s. See the big red note:
Memory Technology Device (MTD) Subsystem for Linux.

I’m not sure where a consumer buys raw flash and would want ubifs.

mattm3a , the link you gave is very interesting about ubifs :
** UBIFS is very different to any traditional file system - it does not work on top of block devices (like hard drives, MMC/SD cards, USB flash drives, SSDs, etc). **
That’s one thing i didn’t know. Thank you.

Do you have an SSD and what file system do you use ? Are you satisfied with this SSD/file system ?

Sorry, I don’t have an SSD.

Hi
Here are some details I posted in the install/boot/login forum;

Installation
on a USB drive

The hitachi and SSD were formatted ext3, the others fat32. I’ve run
openSUSE on the SSD and worked fine.

If you want I can format the SSD to different fs and test for you if you
provide some details.


Cheers Malcolm °¿° (Linux Counter #276890)
openSUSE 11.1 x86 Kernel 2.6.27.7-4-default
up 21:42, 2 users, load average: 0.05, 0.46, 0.42
GPU GeForce 6600 TE/6200 TE - Driver Version: 177.82

@malcolmlewis > Thanks, i guess you’re talking about a flash memory external usb drive. But that’s not like an internal (SATA) SSD that i was talking about.

Sorry, i should have been more accurate : i was inquiring about internal SSDs, with SATA interface, like the one you can find in an eeePC or the one you can buy and insert in your laptop to replace a slower legacy hard disk…

Hi
The one I have is an internal 2.5" SSD, just running on a USB converter.
I have a via pico system to use it with, it is an IDE one, not SATA.

Here are the specs (8GB SLC version);
<http://www.transcendusa.com/Products/ModDetail.asp?ModNo=164&SpNo=3&LangNo=0>

Some of those netbooks don’t have a drive bay, the SSD is on the
motherboard.


Cheers Malcolm °¿° (Linux Counter #276890)
openSUSE 11.1 x86 Kernel 2.6.27.7-4-default
up 1 day 2:13, 2 users, load average: 0.20, 0.10, 0.05
GPU GeForce 6600 TE/6200 TE - Driver Version: 177.82

Hi there,

The elevator=noop option for SSD drives if often mentioned on various forums regarding SSD performance. The general idea is that as SSD driver do not have platters, the traditional IO schedulers are not well suited to them, and it’s best to just not try to account for mechanical systems which are not there. Using elevator=noop essentially does this. While doing this on a conventional drive would generally lower performance it is thought to improve it with SSDs.

However, I have not personally tested this - though it would be easy enough - just run bonnie++ with and with out it.

You can choose the IO scheduler at boot time, simply as a kernel boot option.

Geek Sheet: A Tweaker’s Guide to Solid State Drives (SSDs) and Linux | Tech Broiler | ZDNet.com

redhat.com | Choosing an I/O Scheduler for Red Hat Enterprise Linux 4 and the 2.6 Kernel

I really would love it if ZFS were in the kernel. You of course can use ZFS through fuse, but that is hardly as good. Hopefully in the next year or two Sun will release ZFS under the GPL. I believe the have released some of the source GPL (read only support).

Cheers,
Pete

Thanks a lot, guys, these are very intersting suggestions.