Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 May 2013 10:12:37 -0700
From:      "Marc G. Fournier" <scrappy@hub.org>
To:        Jeremy Chadwick <jdc@koitsu.org>
Cc:        freebsd-fs@freebsd.org
Subject:   Re: NFS Performance issue against NetApp
Message-ID:  <94661399-66AC-4E83-B39B-0426442BB84C@hub.org>
In-Reply-To: <20130513005858.GA73875@icarus.home.lan>
References:  <1966772823.291493.1368362883964.JavaMail.root@erie.cs.uoguelph.ca> <5190335D.9090105@hub.org> <20130513005858.GA73875@icarus.home.lan>

next in thread | previous in thread | raw e-mail | index | archive | help

On 2013-05-12, at 17:58 , Jeremy Chadwick <jdc@koitsu.org> wrote:

>=20
>> Why does it take 34x as many reads on FreeBSD, where rsize on both
>> Linux/FreeBSD are the same ... ?   The amount of data to be read  is
>> the same ... shouldn't the # of reads be within the same ballpark,
>> at least ... ?
>=20
> Can you provide actual proof of this, re: that at the syscall level,
> JBoss is issuing the same nbytes count to read(2) on BSD as it is on
> Linux and Solaris?  You can accomplish this with strace on Linux and
> ktrace (not truss) on FreeBSD.
>=20
> For all we know, JBoss could have some "OS optimisation" setting =
within
> it that says for BSDs use 512 bytes, while for Linux and/or Solaris =
use
> 16384 bytes. =20

That would explain a 4x difference .. not a 34x difference =85=20

As for strace, if anyone feels this has merit and can tell me what I =
need to run, I'm happy to do so =85=20

> Probably off-topic but worth pointing out: I do not know about =
Solaris,
> but Linux has multiple layers of caching, and is well-known for doing
> things like caching (and aggregating!) reads/writes to **block** =
devices
> (this is why on Linux you have to make sure to avoid caching your
> application use O_DIRECT with open(2) or other mechanisms -- the BSDs =
do
> not do this, block devices are always non-cached).

Caching *should* only come into play after the first run of the =
application =85 the first run after a reboot of the server shouldn't =
have anything in cache  yet for caching to come into play =85 unless =
Linux/Solaris have some way of anticipating what application I'm going =
to run before me =85 ?







Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?94661399-66AC-4E83-B39B-0426442BB84C>