Date: Sun, 12 Aug 2001 18:00:14 +0930 From: Greg Lehey <grog@FreeBSD.org> To: Kevin Hui <khui@cs.toronto.edu> Cc: Alfred Perlstein <bright@mu.org>, freebsd-questions@freebsd.org Subject: Re: Experiencing very slow raw write speeds on /dev/ad1 Message-ID: <20010812180014.D48115@wantadilla.lemis.com> In-Reply-To: <Pine.GSO.4.21.0108101106250.9706-100000@gardiner.cs>; from khui@cs.toronto.edu on Fri, Aug 10, 2001 at 11:17:55AM -0400 References: <20010810025156.N85642@elvis.mu.org> <Pine.GSO.4.21.0108101106250.9706-100000@gardiner.cs>
next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, 10 August 2001 at 11:17:55 -0400, Kevin Hui wrote: >>> Adding write caching helped a lot. Now the write speed jumps to ~15.8MB/s >>> instead of the previous 3.5MB/s. >>> Are there any other such settings I should pay attention to? I asked >>> because I believe that the performance is still not as good as can be. I >>> have the rawio program running under Linux with the identical hardware >>> (accessing the /dev/raw/raw0, which maps to /dev/hdb) and I got ~38.4MB/s >>> raw write speed (BTW I get ~38.4MB/s from both Linux and FreeBSD when I do >>> the single-process raw sequential read test). >> >> I'm a bit confused, where do the numbers differ and what are the numbers? > > The numbers from simple runs (standard chunk size, single I/O thread, > sequential read and then sequential write) are provided below. The > FreeBSD write number is less than half of what Linux is getting. > > -Kevin. > > Linux running rawio: > -------------------- > Linux# time ./rawio -p 1 -s 8000000000 -r -w /dev/raw/raw1 > Random read Sequential read Random write Sequential write > ID K/sec /sec K/sec /sec K/sec /sec K/sec /sec > aw1 38406.8 2344 38656.5 2359 > > real 0m15.946s > user 0m0.010s > sys 0m1.790s > > > FreeBSD running rawio: > ---------------------- > FreeBSD# time ./rawio -p 1 -s 8000000000 -r -w /dev/ad1 > Random read Sequential read Random write Sequential write > ID K/sec /sec K/sec /sec K/sec /sec K/sec /sec > ad1 38410.4 2344 15732.6 960 > 26.06 real 0.00 user 1.18 sys Linux and rawio are not really compatible. In Linux you have no choice, you must go via buffer cache; this can give you results which look much better. Also, sequential I/O is not very informative, especially if you only have one process. It would be much more interesting to look at random I/O and not change the default rawio parameters (in particular, let 8 concurrent processes run). Greg -- When replying to this message, please copy the original recipients. If you don't, I may ignore the reply. For more information, see http://www.lemis.com/questions.html See complete headers for address and phone numbers To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010812180014.D48115>