On 7/26/17 5:47 AM, William Allen Simpson wrote:
On 7/14/17 1:08 PM, GerritHub wrote:
william.allen.simp...@gmail.com has uploaded this change for *review*.

View Change <https://review.gerrithub.io/369641>

Refresh call for review.

I'd already made this available for pre-review on Jul 10.

On 7/10/17 9:26 PM, William Allen Simpson wrote:
 >
 > This is only the dispatch side changes, mostly consisting of a pair
 > of patches originally from 2015.
 >
 > The enqueue-dequeue code also used by 9P and upcalls is left intact.
 > That should probably be the Next Big Thing,
 >
There was a question that came up during the code walk-through yesterday.
Note that this patch removes calls to svc_rqst_rearm_events().  That is
now only called within nTI-RPC.

The old code only took new input after each request had been decoded,
resulting in a lot of data being backed up in the OS, and sawtooth
patterns in TCP timeouts and data retransmissions.

Now, events are handled more expeditiously.  This means that we can
run 4 (or more) cores in parallel.

 1) receiving data as soon as it arrives.  This is carried as a
    contiguous buffer or chain of buffers that can be zero-copy.

 2) decoding the request input.

 3) processing the request in the FSAL.

 4) sending the request output.  (Already in V2.5.)

Note also this is done without task switches, unless #3 has to wait for
the FSAL.  One single thread runs seamlessly from receiving input to
sending output.  Hopefully this improves processor cache consistency.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel

Reply via email to