From: Rick Jones <[EMAIL PROTECTED]> Date: Fri, 21 Jul 2006 09:26:42 -0700
> > All this talk reminds me of one thing, how expensive tcp_ack() is. > > And this expense has nothing to do with TCP really. The main cost is > > purging and freeing up the skbs which have been ACK'd in the > > retransmit queue. > > > > So tcp_ack() sort of inherits the cost of freeing a bunch of SKBs > > which haven't been touched by the cpu in some time and are thus nearly > > guarenteed to be cold in the cache. > > > > This is the kind of work we could think about batching to user > > sleeping on some socket call. > > Ultimately isn't that just trying to squeeze the balloon? In this case, the goal is not to eliminate the cost, but to move it to user context so that it: 1) gets charged to the user instead of being lost in the ether of anonymous software interrupt execution, and more importantly... 2) it gets moved to the cpu where the user socket code is executing instead of the cpu where the ACK packet arrives which is basically arbitrary #2 is in-line with the system level end-to-end principle goals of netchannels. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html