From owner-freebsd-fs@FreeBSD.ORG Tue Apr 14 22:48:35 2015 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1F5F7EBD; Tue, 14 Apr 2015 22:48:35 +0000 (UTC) Received: from esa-annu.net.uoguelph.ca (esa-annu.mail.uoguelph.ca [131.104.91.36]) by mx1.freebsd.org (Postfix) with ESMTP id C5536DC5; Tue, 14 Apr 2015 22:48:34 +0000 (UTC) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2CkBADKly1V/95baINchD+DEMJlh0+CABIBAQEBAQEBfYRJBFItCAINGQJLFIg9tDiWIwEBAQEGAQEBAQEBHIEhjjsXNIJvgUUFnDyDN4ZsiSwihAsigXV/AQEB X-IronPort-AV: E=Sophos;i="5.11,578,1422939600"; d="scan'208";a="205655340" Received: from muskoka.cs.uoguelph.ca (HELO zcs3.mail.uoguelph.ca) ([131.104.91.222]) by esa-annu.net.uoguelph.ca with ESMTP; 14 Apr 2015 18:47:26 -0400 Received: from zcs3.mail.uoguelph.ca (localhost.localdomain [127.0.0.1]) by zcs3.mail.uoguelph.ca (Postfix) with ESMTP id F3722B3FEA; Tue, 14 Apr 2015 18:47:25 -0400 (EDT) Date: Tue, 14 Apr 2015 18:47:25 -0400 (EDT) From: Rick Macklem To: FreeBSD Filesystems Cc: Alexander Motin Message-ID: <547186349.19019357.1429051645985.JavaMail.root@uoguelph.ca> Subject: RFC: increasing NFS server max I/O size to 128K MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [172.17.95.10] X-Mailer: Zimbra 7.2.6_GA_2926 (ZimbraWebClient - FF3.0 (Win)/7.2.6_GA_2926) X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Apr 2015 22:48:35 -0000 Hi, mav@ has suggested that 128K will provide better performance for NFS servers using ZFS, since 128K is the default block size used by ZFS. I can't see any reason why changing the NFS server's maximum I/O size from 64K->128K will cause problems. However, if you think there will be issues related to this, please let us know. Note that the FreeBSD NFS client will still use 64K, because changing the client is more problematic, due to its use of the buffer cache. (I will be proposing a patch that will allow buffer cache sizing to be architecture dependent, but that's not this post.;-) The actual patch I have renames NFS_MAXDATA (which is the NFS server's maximum I/O size) to NFS_SRVMAXIO for a couple of reasons: 1 - I wanted the name to make it clear that it applies to the server side only. 2 - I want the name to be different from the NFS_MAXDATA defined in /usr/include/rpcsvc/nfs_prot.h, which has nothing to do with the one defined in the kernel for the NFS server. Any comments/concerns? rick