On 7/8/2021 3:24 PM, sweetpotatopie2021
(sweetpotatopie2...@protonmail.com) wrote:
> Thes list showed one user (John at IBM) who reported success and transfer 
> rates of 7Gb/s. Without these patches I can get 200Mb/s max.

I suspect the 7Gb/sec throughput John observed is cumulative across a
large number of simultaneous RPCs issued by many client systems not
throughput for a single client's communication with a single
fileserver.    The patch series improves cumulative performance by
permitting network traffic from clients A, B and C to potentially be
serviced by a distinct rx_Listener (aka data pump) thread.  It also
reduces the overhead for sending and receiving rx packets by using
sendmmsg() and recvmmsg() to batch transfer Rx packets on Linux /
Solaris kernels which support them.   These changes are also specific to
Rx in userland such as a fileserver, volserver or database server;
kernel Rx implementations are still limited to a single Rx listener and
a single rpc worker thread.

I'm pointing these details out because the changes  are unlikely to
improve performance of a single client reading / writing from a single
fileserver.   In that scenario all of the traffic from the client will
be processed by a single rx listener thread.   The bulk reading and
writing of packets will change the performance of the link.   Whether
its an improvement or not depends upon a number of factors.   One reason
performance might drop for a single client with this series is that the
batch reading/writing of packets combined with the sorting of read
packets will adversely impact the ACK clock and could increase the
likelihood that packets will be dropped when writing to a congested link. 

What is the scenario in which the 200Mb/sec transfer rate is observed
and how is it measured?  

Jeffrey Altman





Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to