Opened 7 years ago

Last modified 7 years ago

#1036 new feature

huge pages support for shm buffers

Reported by: aaf <osgxdvyg@…> Owned by:
Priority: long-term Milestone: future
Component: mpich Keywords: huge pages shared
Cc:

Description

Hello

Is it possible to use huge pages for shared memory buffers/queues?

PS Nemesis with lmt_shm enabled.

Change History (3)

comment:1 Changed 7 years ago by goodell

  • Milestone set to future
  • Priority changed from major to long-term

There is no explicit support for huge pages in MPICH2. You may be able to tweak MPICH2 slightly to use one of the interfaces described here: http://lwn.net/Articles/375096/

comment:2 Changed 7 years ago by aaf <osgxdvyg@…>

Huge pages can be useful for shared buffer, I think.

To use interfaces I need to allocate memory aligned on HUGEPAGE_SIZE and with size multiple of huge page size.

How often can nemesis allocate additional memory? Which process will allocate shm memory (first on smp node or any on smp node)?

comment:3 Changed 7 years ago by goodell

There indeed may be a performance benefit.

For small message communication nemesis only performs a single allocation at process startup. For large messages (LMT), IIRC nemesis will lazily create copy buffers pairwise between processes. So if two processes never communicate with large messages, they won't setup a copy buffer between the two. I think that the receiver always is the one who creates the buffer.

Note: See TracTickets for help on using tickets.