Hello, I've stumbled onto a strange performance problem on a new server: reading from disks is fast (70-80MB/s), but writing is extremely slow (13-15MB/s). I've measured it like this:
dd if=/dev/zero of=/dev/sdd bs=4096 count=65536 conv=fdatasync 65536+0 records in 65536+0 records out 268435456 bytes (268 MB) copied, 17.7004 seconds, 15.2 MB/s *but*: if I rebuild the kernel and change CONFIG_FUSION_MAX_SGE from 40 (Fedora's default) to 128 (maximum value), it suddenly gets much faster: 31MB/s! Looks very much like an interrupt problem to me. Maybe increasing the scatter gather mitigates the problem of missing completion notifications. Evidence: Exhibit A: custom kernel config for 2.6.18-1.2257.fc5.bernie http://www.codewiz.org/helium_logs/config Exhibit B: dmesg output from said kernel http://www.codewiz.org/helium_logs/dmesg Exhibit C: misc proc files, and all that http://www.codewiz.org/helium_logs/ Exhibit D: motherboard and chipset specification http://www.supermicro.com/products/motherboard/Xeon3000/3010/PDSME+.cfm Circumstantial evidence: - Seems to affect just the LSI SAS1068 PCI-X controller. The on-board AHCI controller writes very fast (>60MB/s) - I've seen a very similar writing bottleneck with a Promise TX4 SATA controller (not PCI-X) on a server with a similar motherboard (Supermicro with Mukilteo 3000). - Passing mpt_msi_enable=1 doesn't change anything - FreeBSD 6.2 is even slower: writes at 7MB/s - OpenSolaris is much, much slower... less than 1MB/s. - Windows Vista (rc something) writes at 90MB/s. Too fast to believe, maybe dd from Cygwin is misbehaving. -- // Bernardo Innocenti - Develer S.r.l., R&D dept. \X/ http://www.develer.com/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/