Thread (16 messages) 16 messages, 6 authors, 2006-08-18

Re: [PATCH 1/1] network memory allocator.

From: Christoph Hellwig <hch@infradead.org>
Date: 2006-08-16 08:48:23
Also in: linux-mm, lkml

On Wed, Aug 16, 2006 at 09:35:46AM +0400, Evgeniy Polyakov wrote:
On Tue, Aug 15, 2006 at 10:21:22PM +0200, Arnd Bergmann (arnd@arndb.de) wrote:
quoted
Am Monday 14 August 2006 13:04 schrieb Evgeniy Polyakov:
quoted
?* full per CPU allocation and freeing (objects are never freed on
????????different CPU)
Many of your data structures are per cpu, but your underlying allocations
are all using regular kzalloc/__get_free_page/__get_free_pages functions.
Shouldn't these be converted to calls to kmalloc_node and alloc_pages_node
in order to get better locality on NUMA systems?

OTOH, we have recently experimented with doing the dev_alloc_skb calls
with affinity to the NUMA node that holds the actual network adapter, and
got significant improvements on the Cell blade server. That of course
may be a conflicting goal since it would mean having per-cpu per-node
page pools if any CPU is supposed to be able to allocate pages for use
as DMA buffers on any node.
Doesn't alloc_pages() automatically switches to alloc_pages_node() or
alloc_pages_current()?
That's not what's wanted.  If you have a slow interconnect you always want
to allocate memory on the node the network device is attached to.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help