From owner-cvs-all Sun Sep 19 11:47:51 1999 Delivered-To: cvs-all@freebsd.org Received: from critter.freebsd.dk (critter.freebsd.dk [212.242.40.131]) by hub.freebsd.org (Postfix) with ESMTP id 1038614C9B; Sun, 19 Sep 1999 11:47:31 -0700 (PDT) (envelope-from phk@critter.freebsd.dk) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.9.3/8.9.2) with ESMTP id UAA17320; Sun, 19 Sep 1999 20:45:44 +0200 (CEST) (envelope-from phk@critter.freebsd.dk) To: Matthew Dillon Cc: dg@root.com, Greg Lehey , cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: Re: User block device access (was: cvs commit: src/sys/miscfs/specfs spec_vnops.c src/sys/sys vnode.h src/sys/kern vfs_subr.c) In-reply-to: Your message of "Sun, 19 Sep 1999 11:37:23 PDT." <199909191837.LAA73569@apollo.backplane.com> Date: Sun, 19 Sep 1999 20:45:44 +0200 Message-ID: <17318.937766744@critter.freebsd.dk> From: Poul-Henning Kamp Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk In message <199909191837.LAA73569@apollo.backplane.com>, Matthew Dillon writes: >:No that isn't the case, and if you cared to look at the code you >:would realize that the blocksize I use doesn't matter much since >:spec_read() reblocks. >: >:rover# time dd if=/dev/rda0 of=/dev/null bs=8k count=10000 >:10000+0 records in >:10000+0 records out >:81920000 bytes transferred in 27.664275 secs (2961220 bytes/sec) >:0.0u 0.4s 0:27.66 1.4% 82+231k 0+0io 0pf+0w >:rover# ^rda^da^ >:time dd if=/dev/da0 of=/dev/null bs=8k count=10000 >:10000+0 records in >:10000+0 records out >:81920000 bytes transferred in 66.234151 secs (1236824 bytes/sec) >:0.0u 2.8s 1:06.24 4.2% 69+194k 40001+0io 0pf+0w >: > What kind of cpu is this? If the difference is this great, then > the memory-copy overhead is what is killing your test due to a slow > cpu. Negative Houston: Timecounter "TSC" frequency 400911199 Hz CPU: Pentium II/Xeon/Celeron (400.91-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x652 Stepping = 2 Features=0x183f9ff real memory = 134152192 (131008K bytes) avail memory = 127098880 (124120K bytes) > Since you are not using the buffered block device the way it > is supposed to be used (i.e. your test is resulting in a 100% cache > miss ratio), your results are a foregone conclusion. Matt, remember the discussion here is about "If we only retain one of the interfaces, which should it be then ?" If we retain bdevs, Oracle and similar apps, which are much more common than the potential but practically non-existent apps which rely on bdev caching, would be hit hard by this overhead. -- Poul-Henning Kamp FreeBSD coreteam member phk@FreeBSD.ORG "Real hackers run -current on their laptop." FreeBSD -- It will take a long time before progress goes too far! To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message