[mpich-discuss] Faster MPI_Attr_get?

Jed Brown jedbrown at mcs.anl.gov
Fri May 11 13:31:56 CDT 2012


On Fri, May 11, 2012 at 1:24 PM, Jeff Squyres <jsquyres at cisco.com> wrote:

> Just curious -- what's your use case for this?
>
> I think the prevailing assumption in the forum was that attributes weren't
> used much, and attribute set/get performance definitely didn't matter.
>

Well, attributes are critical for library interoperability. Libraries would
need horrible work-arounds if it didn't exist.

In this case, we are stashing a "thread communicator" as an attribute, so
we access it each time a thread pool is sparked. There is an OpenMP
implementation of thread communicator, but also using other threading
models and raw pthreads (which is somewhat lower overhead because our model
is less synchronous).

The ca. 1000 cycle MPI_Attr_get makes it dominate the overhead to spark
threads. A simple-minded cache speeds it up a lot, but it would be cleaner
to just use MPI_Attr_get.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20120511/ef8a4a66/attachment.htm>


More information about the mpich-discuss mailing list