Hi! I have put a solid-state disk into my GNU Hurd system. It's a KingSpec KSD-PA25.6-064MS, <http://www.kingspec.com/en/product_xx56.html>. This vendor's series seems to be about the only one available that has not SATA but PATA connectivity, and is reasonably priced (I paid 70 EUR). I then had some "fun" ;-) with GNU Mach (see my recent email), and had some more (see below), and here is some real-world benchmarking with a GCC bootstrap build:
Old 30 GB HDD: »make«: 14.5 h, »make install«: 45 min. SSD for root and data filesystems: »make«: 14 h, »make install«: 35 min. SSD with --no-atime for root and data filesystems: »make«: 13.25 h, »make install«: 35 min. (Unfortunately I don't have data with --no-atime using the old HDD, and don't feel like again changing the hardware setup to get these numbers.) So, switching to a SSD does give a small performance boost, but not the big one we had hoped for. Using --no-atime improves this further. Perhaps we should follow suit with the Linux kernel, and implement and make default a »relatime« mount option. Here is the additional Linux kernel patch that I intend to apply (in a suitable form) to GNU Mach, which I guess doesn't need further discussion: commit 602da297e293eb2cbd28dcdbbe247593a46a853a Author: David S. Miller <da...@davemloft.net> Date: Wed Dec 2 21:58:33 2009 -0800 ide: Increase WAIT_DRQ to accomodate some CF cards and SSD drives. Based upon a patch by Philippe De Muyter, and feedback from Mark Lord and Robert Hancock. As noted by Mark Lord, the outdated ATA1 spec specifies a 20msec timeout for setting DRQ but lots of common devices overshoot this. Signed-off-by: David S. Miller <da...@davemloft.net> diff --git include/linux/ide.h include/linux/ide.h index e4135d6..0ec6129 100644 --- include/linux/ide.h +++ include/linux/ide.h @@ -125,8 +125,8 @@ struct ide_io_ports { * Timeouts for various operations: */ enum { - /* spec allows up to 20ms */ - WAIT_DRQ = HZ / 10, /* 100ms */ + /* spec allows up to 20ms, but CF cards and SSD drives need more */ + WAIT_DRQ = 1 * HZ, /* 1s */ /* some laptops are very slow */ WAIT_READY = 5 * HZ, /* 5s */ /* should be less than 3ms (?), if all ATAPI CD is closed at boot */ Without the patch I would eventually hit some timeout, followed by a few retries (that apparently don't get handled/completed properly), followed by a literally endless loop of »marginal timeout«s (linux/src/drivers/block/ide.c), and system lock-up. Which may of course be a bug in its own right, but I have no longer seen that once I increased WAIT_DRQ. Grüße, Thomas
pgptPX6Lx53IH.pgp
Description: PGP signature