Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Mar 2019 09:38:31 +0700
From:      Victor Sudakov <vas@mpeks.tomsk.su>
To:        "freebsd-virtualization@freebsd.org" <freebsd-virtualization@freebsd.org>
Subject:   Re: bhyve and vfs.zfs.arc_max, and zfs tuning for a hypervisor
Message-ID:  <20190321023831.GA57807@admin.sibptus.ru>
In-Reply-To: <6388ebd5a12949179ff6da33eb107205@SERVER.ad.usd-group.com>
References:  <20190319024638.GA8193@admin.sibptus.ru> <AA997A20-4EBF-46DF-A517-FD2072682545@punkt.de> <20190320015236.GA35511@admin.sibptus.ru> <6388ebd5a12949179ff6da33eb107205@SERVER.ad.usd-group.com>

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

--bg08WKrSYDhXBjb5
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Matt Churchyard wrote:
> >=20
> > > 1. Does ARC actually cache zfs volumes (not files/datasets)?
> >=20
> > Yes it does.
>=20
> I find this distinction between volumes/files/etc and what is cached
> causes confusion (as well as "volumes not datasets").
>=20
> Both ZVOLs and Z file systems are types of dataset. A dataset stores data
> in records (usually up to 128kb in size).  It's these records that are
> cached (and that most ZFS functions such as compression/raidz/zil/etc
> work with)
>=20
> As far as the ZFS lower levels are concerned, there is no difference
> between a volume and a file system.

Thank you Matt, this was very instructive.

> > > 2. If ARC does cache volumes, does this cache make sense on a=20
> > > hypervisor, because guest OSes will probably have their own disk cach=
e anyway.
> >=20
> > IMHO not much, because the guest OS is relying on the fact that when=20
> > it writes it=E2=80=99s own cached data out to =E2=80=9Edisk=E2=80=9C, i=
t will be committed to=20
> > stable storage.
>=20
> Maybe I've missed something but I don't quite get the link between
> read cache (ARC) and guest writes here?

Maybe there was a confusion between read and write caches, but my
question still stands:

Does it make sense to cache the same data (for reading too) twice: one time
in host's RAM (ZFS ARC) and the other time in guest's RAM (whatever fs the
guest uses, all modern OSes have disk caches)?

What do VMWare or VirtualBox do for this situation? Do they ever cache
their volumes in the hypervisor's RAM?

--=20
Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
2:5005/49@fidonet http://vas.tomsk.ru/

--bg08WKrSYDhXBjb5
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJckvknAAoJEA2k8lmbXsY05lYIAJQUH3L5cyzR/TEuzoHE1esh
LqSJqNDKDAJllrlKZ9NNPe5g1ylLiEEtc0WwrvesrWecIX20cJqJaamz2uEVk/iC
EUWaCKkOEN8LvOoVMMY8GvJ5r0DezdfDyKp01tSNTZY/HlsF63u5UNyNlHXDGYeU
pSCZhl+8qWWoZxk51G3znGU03QKPD6R9BFBtp6Yukp/cGb3E95jOb8wmX2z/3CJQ
bsY2SUlcGdeRnM+bifDBQaH9oCktcYWqpejEEUNLKx5Gmvz1KuG0X1yrH5mtqanY
3EFm9EPsqvn/QWnAxLqEwBmdoZokLtYKXTUPV16LRLrL8Jy19gklACBNEevc+Yo=
=9k/W
-----END PGP SIGNATURE-----

--bg08WKrSYDhXBjb5--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20190321023831.GA57807>