Re: [PATCH 1/7] [NET]: uninline skb_put, de-bloats a lot
From: Joe Perches <joe@perches.com>
Date: 2008-03-28 00:55:45
Also in:
lkml
From: Joe Perches <joe@perches.com>
Date: 2008-03-28 00:55:45
Also in:
lkml
On Thu, 2008-03-27 at 19:11 -0500, Matt Mackall wrote:
In the 486 era, when CPU performance was close to 1:1 with memory, branches were more expensive than sequential memory fetches, and registers were scarce, inlining made a fair amount of sense. But now we've moved very far away from that indeed:
Systems have certainly improved but Linux is used in a wide variety of CPU Hz, memory & register architectures. Some of those systems haven't changed at all. Some of those systems have sufficient cache for a networking stack. I think this change could negatively impact some of these different uses and systems.
In the case of this patch, removing 60-100k from the network stack means we're almost certainly avoiding a lot of cache misses in the big picture while taking a few cycle hit per packet in the smallest scale.
I think the quantities of big v small are instance dependent and it might be prudent to have the capability to keep these functions inline.