All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Neil Brown <neilb@suse.de>,
	Michael Shuey <shuey-olO2ZdjDehc3uPMLIKxrzw@public.gmane.org>,
	Shehjar Tikoo <shehjart-YbfuJp6tym7X/JP9YwkgDA@public.gmane.org>,
	linux-kernel@vger.kernel.org, linux-nfs@vger.kernel.org,
	rees@citi.umich.edu, a
Subject: Re: high latency NFS
Date: Fri, 1 Aug 2008 15:23:43 -0400	[thread overview]
Message-ID: <20080801192343.GJ7764@fieldses.org> (raw)
In-Reply-To: <20080801072320.GE6201@disturbed>

On Fri, Aug 01, 2008 at 05:23:20PM +1000, Dave Chinner wrote:
> Having implemented the second option on a different NUMA aware
> OS and NFS server, I can say that it isn't that complex, nor that
> hard to screw up.
> 
> 	1. spawn a new thread only if all NFSDs are busy and there
> 	   are still requests queued to be serviced.
> 	2. rate limit the speed at which you spawn new NFSD threads.
> 	   About 5/s per node was about right.
> 	3. define an idle time for each thread before they
> 	   terminate. That is, is a thread has not been asked to
> 	   do any work for 30s, exit.
> 	4. use the NFSD thread pools to allow per-pool independence.

Actually, I lost you on #4.  You mean that you apply 1-3 independently
on each thread pool?  Or something else?

--b.

WARNING: multiple messages have this Message-ID (diff)
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Neil Brown <neilb@suse.de>, Michael Shuey <shuey@purdue.edu>,
	Shehjar Tikoo <shehjart@cse.unsw.edu.au>,
	linux-kernel@vger.kernel.org, linux-nfs@vger.kernel.org,
	rees@citi.umich.edu, aglo@citi.umich.edu
Subject: Re: high latency NFS
Date: Fri, 1 Aug 2008 15:23:43 -0400	[thread overview]
Message-ID: <20080801192343.GJ7764@fieldses.org> (raw)
In-Reply-To: <20080801072320.GE6201@disturbed>

On Fri, Aug 01, 2008 at 05:23:20PM +1000, Dave Chinner wrote:
> Having implemented the second option on a different NUMA aware
> OS and NFS server, I can say that it isn't that complex, nor that
> hard to screw up.
> 
> 	1. spawn a new thread only if all NFSDs are busy and there
> 	   are still requests queued to be serviced.
> 	2. rate limit the speed at which you spawn new NFSD threads.
> 	   About 5/s per node was about right.
> 	3. define an idle time for each thread before they
> 	   terminate. That is, is a thread has not been asked to
> 	   do any work for 30s, exit.
> 	4. use the NFSD thread pools to allow per-pool independence.

Actually, I lost you on #4.  You mean that you apply 1-3 independently
on each thread pool?  Or something else?

--b.

  parent reply	other threads:[~2008-08-01 19:23 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-24 17:11 high latency NFS Michael Shuey
     [not found] ` <200807241311.31457.shuey-olO2ZdjDehc3uPMLIKxrzw@public.gmane.org>
2008-07-30 19:21   ` J. Bruce Fields
2008-07-30 19:21     ` J. Bruce Fields
2008-07-30 21:40     ` Shehjar Tikoo
2008-07-30 21:40       ` Shehjar Tikoo
2008-07-31  2:35       ` Michael Shuey
     [not found]         ` <200807302235.50068.shuey-olO2ZdjDehc3uPMLIKxrzw@public.gmane.org>
2008-07-31  3:15           ` J. Bruce Fields
2008-07-31  3:15             ` J. Bruce Fields
2008-07-31  7:03             ` Neil Brown
2008-07-31  7:03               ` Neil Brown
     [not found]               ` <18577.25513.494821.481623-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2008-08-01  7:23                 ` Dave Chinner
2008-08-01  7:23                   ` Dave Chinner
2008-08-01 19:15                   ` J. Bruce Fields
2008-08-01 19:15                     ` J. Bruce Fields
2008-08-04  0:32                     ` Dave Chinner
2008-08-04  0:32                       ` Dave Chinner
2008-08-04  1:11                       ` J. Bruce Fields
2008-08-04  1:11                         ` J. Bruce Fields
2008-08-04  2:14                         ` Dave Chinner
2008-08-04  2:14                           ` Dave Chinner
2008-08-04  9:18                         ` Bernd Schubert
2008-08-04  9:18                           ` Bernd Schubert
     [not found]                           ` <200808041118.19743.bs-PKu+Ek1N2UGzQB+pC5nmwQ@public.gmane.org>
2008-08-04  9:25                             ` Greg Banks
2008-08-04  9:25                               ` Greg Banks
2008-08-04  1:29                       ` NeilBrown
2008-08-04  1:29                         ` NeilBrown
     [not found]                         ` <52873.192.168.1.70.1217813385.squirrel-eq65iwfR9nKIECXXMXunQA@public.gmane.org>
2008-08-04  6:42                           ` Greg Banks
2008-08-04  6:42                             ` Greg Banks
     [not found]                             ` <4896A4EE.9030706-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org>
2008-08-04 19:07                               ` J. Bruce Fields
2008-08-04 19:07                                 ` J. Bruce Fields
2008-08-05 10:51                                 ` Greg Banks
2008-08-05 10:51                                   ` Greg Banks
2008-08-01 19:23                   ` J. Bruce Fields [this message]
2008-08-01 19:23                     ` J. Bruce Fields
2008-08-04  0:38                     ` Dave Chinner
2008-08-04  0:38                       ` Dave Chinner
2008-08-04  8:04     ` Greg Banks
2008-08-04  8:04       ` Greg Banks
2008-07-31  0:07 ` Lee Revell
2008-07-31 18:06 ` Enrico Weigelt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080801192343.GJ7764@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=neilb@suse.de \
    --cc=rees@citi.umich.edu \
    --cc=shehjart-YbfuJp6tym7X/JP9YwkgDA@public.gmane.org \
    --cc=shuey-olO2ZdjDehc3uPMLIKxrzw@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.