On Sun, Jul 24, 2016 at 12:33 PM, Gleb Natapov <g...@scylladb.com> wrote:

> On Sun, Jul 24, 2016 at 11:27:02AM +0200, Benoît Canet wrote:
> > ZFS is also used on ubuntu.
> >
> So what? It does not changes the fact that writing using write() system
> call does not go through out write page cache on OSv. It does go through
> Linux' page cache on Linux.
>

I think this was precisely Benoit's question...

So it appears that unless you're using mmap(), OSv does *not* have any
writeback buffer, not even for ZFS filesystems: If you do a write() system
call to write 10 bytes, you will create a 10-byte disk operation; If
understand you correctly, there is no attempt to somehow coalesce many
small writes to one operation, nor is there any attempt to reorder the I/O
operations to better fit some assumptions on disk performance.

So basically in OSv, any write() to ZFS is using O_DIRECT even if you
didn't ask for that.

How do things work on Solaris with ZFS? Wouldn't Solaris expect ZFS to
contain a write cache just like it holds a read cache (the ARC)? Moreover,
these two should obviously be the same cache: if you write() to a file and
immediately read() the same bytes, you can get the answer from the cache.


>
> > What make me think about page cache is the fact that ubuntu issue minimal
> > write of 4K.
> On Linux every write (if not O_DIRECT) goes through the page cache.
>
> >
> > They store their data on an NFS server.
> You mean VM's disk is on NFS server and they enables cache = none?
> Otherwise tcpdump is meaningless.
>

Yes, I believe that's what he meant. It's a kind of non-optimal setup, but
it's still not very fun when OSv is 7 times slower than Linux on such a
setup which wasn't particularly speedy to begin with.

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to