Re: Writing large build logs to NFS extremely slow?

From: Rick Macklem <rmacklem_at_uoguelph.ca>
Date: Wed, 05 Jan 2022 21:04:14 UTC
Zaphod Beeblebrox wrote:
> Is the NFS mounted filesystem NFS?
>  I've found NFS mounted ZFS has several
> pathologies like this when there is no SSD cache and/or log vdevs attached.
Just fyi, I've recently committed a change to main that changes the NFS
client so that it does append writes directly to the NFS server.
This improved the append write performance by 10x for UFS, but only
improved 30% for ZFS without any ZIL log and sync=enabled.
Append writes over NFS is still MUCH slower than a local file system.
(Partially because it has to do every write to the serve FileSync, which means
 the server must commit the changes to stable storage before replying to the
 RPC. It also must do a Getattr RPC against the server before every write,
 to get the up-to-date file size.)

This change won't by MFC'd for a couple of months and is somewhat broken
in main at this time. I am working with kib@ to fix it.

rick

On Wed, Oct 6, 2021 at 10:18 PM Felix Palmen <felix@palmen-it.de> wrote:

> Hi all,
>
> I use a -CURRENT bhyve vm for testing port builds with poudriere. As
> this vm is only running when needed, but I want to always have access to
> the build logs, I use NFS to mount /usr/local/poudriere/data/logs from
> the host.
>
> I noticed some few ports take ridiculously long to build while barely
> using any CPU time at all. On a closer look, that's all ports producing
> a lot of compiler (warning) output, e.g. gcc, gnutls, gtk2, …
>
> So I assume appending to a large file via NFS gets slower and slower. Is
> there any mount option I could try to fix this? Right now I only have
> `nolockd`, I also tried `noncontigwr` which didn't change anything.
>
> Thinking about alternatives to NFS, are there any news for client-side
> 9p virtfs? I found <https://github.com/swills/virtfs-9p-kmod> which
> still builds with a few minor adaptions, but trying to mount a 9p share
> freezes the machine.
>
> Would you suggest a different mailing list to ask?
>
> BR, Felix
>
> --
>  Dipl.-Inform. Felix Palmen  <felix@palmen-it.de>   ,.//..........
>  {web}  http://palmen-it.de  {jabber} [see email]   ,//palmen-it.de
>  {pgp public key}     http://palmen-it.de/pub.txt   //   """""""""""
>  {pgp fingerprint} A891 3D55 5F2E 3A74 3965 B997 3EF2 8B0A BC02 DA2A
>