Hi Bill,

There has not been griping.  Malahal has done performance measurement.

IIUC (per IRC) Malahal:

1. has empirical evidence that moving the current Ganesha -dispatch queue- 
bands into lanes
measurably improves throughput, when the number of worker threads is large 
(apparently, 64 and (!) 256)

That is expected, so I'm looking to Malahal to send a change (and some other 
tuning changes) for review.

2. Malahal indicated he found a bug of some kind in the thread fridge, provoked 
by the shutdown check
in the current dispatch queue code, which he says he fixed, so if he hasn't 
already sent a change, I'm
expecting to see one soon which addresses this.

3. Malahal described in IRC an additional change he made to split the ntirpc 
output ioq into
lanes, and believed he saw improvement (as of ~2 weeks ago), but was still 
benchmarking in order to
split out the impact of this change relative to others.

I'm surprised this is helpful (but, it would empirically disprove bottom-half 
serialization by xprt, if
true--oh, the measured improvement from reduced xprt->lock contention also 
seems to disprove it).

4. As I've indicated in discussion (2-3 occasions) with you here, it's been in 
our medium-term plan to move
all of the current dispatch operations back into a new ntirpc run-loop, 
replacing legacy svc_run().  I consider
that completely orthogonal to Ganesha having it's own thread pool.  As well, 
it's very likely that the full
change we should be looking at would be using platform async i/o for (at least) 
all recv and likely send paths.
That will require work on decoders and is big enough that I don't see it coming 
in 2.3,
unless RDMA starts working great first.

Matt

-- 
Matt Benjamin
Red Hat, Inc.
315 West Huron Street, Suite 140A
Ann Arbor, Michigan 48103

http://www.redhat.com/en/technologies/storage

tel.  734-761-4689
fax.  734-769-8938
cel.  734-216-5309

----- Original Message -----
> From: "William Allen Simpson" <william.allen.simp...@gmail.com>
> To: "NFS Ganesha Developers" <nfs-ganesha-devel@lists.sourceforge.net>
> Sent: Wednesday, September 2, 2015 10:35:38 AM
> Subject: [Nfs-ganesha-devel] Fridge worker pool to ntirpc?
> 
> There has been some griping (that hasn't yet appeared on
> this mailing list) that the ntirpc worker pool is too slow
> processing TCP output.  But no specific proof.
> 
> There are several possible reasons for that, including that
> the work model there would be better per interface, rather
> than per connection.  I've mentioned fair queuing before.
> 
> I've made a lock-free variant for RDMA, but for TCP that
> requires combining the fridge thread pool with the ntirpc
> pool.  I've had code for that sitting around since May,
> although it's rather bit-rotten in the meantime.
> 
> I've been assuming you don't want it until the new RDMA?
> 
> ------------------------------------------------------------------------------
> Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
> Get real-time metrics from all of your servers, apps and tools
> in one place.
> SourceForge users - Click here to start your Free Trial of Datadog now!
> http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
> _______________________________________________
> Nfs-ganesha-devel mailing list
> Nfs-ganesha-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel
> 

------------------------------------------------------------------------------
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel

Reply via email to