Re: Request for Testing: TCP RACK

2024-03-21 Thread Drew Gallatin
> > only now test that it does not on my local box :) > The patch still causes access to all cpu's cachelines on each userret. > It would be much better to inc/check the threshold and only schedule the > call when exceeded. Then the call can occur in some dedicated context, > l

Re: Request for Testing: TCP RACK

2024-03-18 Thread Drew Gallatin
No. The goal is to run on every return to userspace for every thread. Drew On Mon, Mar 18, 2024, at 3:41 PM, Konstantin Belousov wrote: > On Mon, Mar 18, 2024 at 03:13:11PM -0400, Drew Gallatin wrote: > > I got the idea from > > https://people.mpi-sws.org/~druschel/publicati

Re: Request for Testing: TCP RACK

2024-03-18 Thread Drew Gallatin
I got the idea from https://people.mpi-sws.org/~druschel/publications/soft-timers-tocs.pdf The gist is that the TCP pacing stuff needs to run frequently, and rather than run it out of a clock interrupt, its more efficient to run it out of a system call context at just the point where we return

Re: Request for Testing: TCP RACK

2024-03-17 Thread Drew Gallatin
Resending with the patch as an attachment. Drew On Sun, Mar 17, 2024, at 11:39 AM, Drew Gallatin wrote: > I don't have the full context, but it seems like the complaint is a > performance regression in bonnie++ and perhaps other things when tcp_hpts is > loaded, even when it is

Re: Request for Testing: TCP RACK

2024-03-17 Thread Drew Gallatin
I don't have the full context, but it seems like the complaint is a performance regression in bonnie++ and perhaps other things when tcp_hpts is loaded, even when it is not used. Is that correct? If so, I suspect its because we drive the tcp_hpts_softclock() routine from userret(), in order to

Re: Increasing TCP TSO size support

2024-02-02 Thread Drew Gallatin
On Fri, Feb 2, 2024, at 9:05 PM, Rick Macklem wrote: > > But the page size is only 4K on most platforms. So while an M_EXTPGS mbuf > > can hold 5 pages (..from memory, too lazy to do the math right now) and > > reduces socket buffer mbuf chain lengths by a factor of 10 or so (2k vs 20k > > pe

Re: Increasing TCP TSO size support

2024-02-02 Thread Drew Gallatin
On Fri, Feb 2, 2024, at 6:13 PM, Rick Macklem wrote: > A factor here is the if_hw_tsomaxsegcount limit. For example, a 1Mbyte NFS > write request > or read reply will result in a 514 element mbuf chain. Each of these (mostly > 2K mbuf clusters) > are non-contiguous data segments. (I suspect mo

Re: Increasing TCP TSO size support

2024-02-02 Thread Drew Gallatin
What is the link speed that you're working with? A long time ago, when I worked for a now-defunct 10GbE NIC vendor, I experimented with the benefits of TSO as we varied the max TSO size. I cannot recall the platform (it could have been OSX, Solaris, FreeBSD or Linux). At the time (~2006?) th