Date: Tue, 26 Sep 2006 11:46:44 -0400 From: Mark Bucciarelli <mark@gaiahost.coop> To: freebsd-performance@freebsd.org Subject: Why are disk writes so slow? Message-ID: <20060926154643.GA3064@rabbit>
next in thread | raw e-mail | index | archive | help
I am reading Richard Stevens' "Advanced Programming in the UNIX Environment," a most excellent book. Out of curiosity, I tried his I/O efficiency program on my IBM A30 Thinkpad, running 6.0-RELEASE with default tuning parameters. The test program reads file on stdin and writes to stdout, and you modify bufsize to watch how time changes. As in his example (with a bufsize of 8192), time ./a.out < 1.5M-testfile > /dev/null runs five times faster than (clock time) time ./a.out < 1.5M-testfile > /a.out.out Can someone explain to me why writing is five times as slow as writing? What's going on in the computer? The file is not O_SYNC, so it can't be validating the data on the disk. Later in the same chapter, he shows the impact of O_SYNC flag. I re-ran this experiment too, and while everything is two orders of magnitude faster than his times in the book, the relative speed of writing with O_SYNC is three times slower. 1993 2006 ----- ---- normal write 2.3s .023s O_SYNC 13.4s .364s slowdow factor 5.8 15.8 Is this all b/c disks are so much larger? m
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060926154643.GA3064>