Reducing Disk i/o on EeePC 901

I have installed openSUSE 11.1 (KDE3) on my EeePC 901. The 901 contains two SSD drives. I have formatted both to EXT3 , with SDA1 containing the root directory, and SDB1 containing /home.

I am trying to reduce i/o to the SSD to reduce wear, using the “data=writeback” and “commit=90” mount options, as described here:

EeeUser ASUS Eee PC Forum / Alternative Linux distributions’ pitfalls

I have added “# defoptions= rootflags=data=writeback,commit=90” to menu.lst, and “data=writeback,commit=90” to the fstab entries for /sda1 (which contains my / directory) and/sdb1 (which contains /home). The fstab entries are as follows:

/dev/disk/by-id/ata-ASUS-PHISON_SSD_SOQ1880077-part1 / ext3 noatime,nodiratime,nobh,data=writeback,commit=90,acl,user_xattr 1 1

/dev/disk/by-id/ata-ASUS-PHISON_SSD_SOQ2880090-part1 /home ext3 noatime,nodiratime,nobh,data=writeback,commit=90,acl,user_xattr 1 2

My problem is that dmesg seems to indicate that the revised options have been implemented on /sdb1, but not on /sda1. The relevant parts of dmesg are:

kjournald starting.* Commit interval 5 seconds
EXT3 FS on sda1, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
EXT3-fs: cannot change data mode on remount

kjournald starting.* Commit interval 90 seconds
EXT3 FS on sdb1, internal journal
EXT3-fs: mounted filesystem with writeback data mode.

What have I done wrong? I would be very grateful for any advice.

I’ve made these changes using the yast partitioner module (that changes fstab, not menu.lst), in a desktop with separate root (kept it ordered) and home (changed to writeback) partitions on the same disk, and both worked.

Other options you may want to enable are noatime (there’s a checkbox in fstab options) and nodiratime (you can type it in the additional options box). Relevant lines in my fstab are:

/dev/disk/by-id/scsi-SATA_SAMSUNG_HD250HJS19GJ50Q813811-part2 / ext3 noatime,acl,user_xattr,nodiratime 1 1
/dev/disk/by-id/scsi-SATA_SAMSUNG_HD250HJS19GJ50Q813811-part3 /home ext3 noatime,data=writeback,acl,user_xattr 1 2

Hope it helps.

The tests i did with my eeepc 901 with a standard phison ssd showed that the ‘noadirtime’ and the ‘data=writeback’ options slowed down the startup and shutdown process .
So i only used the ‘noatime’ option . And i set the kernel to ‘noop’ .
I would appreciate any feedback about which option is better for you.

With non-SS disks I note no difference in startup/shutdown, but I’ve not benchmarked this (a lot of other stuff has much greater impact) although SS disks should be much faster, so the impact may be relevant.

But the OP objective was to reduce r/rw access to the SS disk, not speed boot/shutdown. AFAIK SS-disk worn out with much less R/RW accesses than magnetic ones.

Hi,
Sorry for the long delay.

First, I set the kernel option “noop” some time ago, and noticed a real improvement in overall performance.

On the main issue, I’ve managed to get the drive containing the root directory to use “writeback” mode now, by changing it with tune2fs, but I still can’t change the commit time. All the fstab entries seem OK, and this is confirmed by Yast’s Partitioner, but dmesg still says commit is 5secs for sda1. Sdb1 (the /home partition) is fine.

I’ll keep trying, but any further ideas would be welcome.

Curious, the noop should be good for arrays or VMs but bad to single disks, according to elevator=noop : Bob Plankers, The Lone Sysadmin . May be it’s different for SS disks, but I wouldn’t think so.

When he says ‘physical disk’ he almost certainly means platter disk.

It makes sense - there’s no random access seek time penalty at all on flash, so optimising to reduce it is just wasting CPU cycles.

Yep, that ship only sailed after I posted :slight_smile: