[mpich-discuss] Affinity with MPICH_ASYNC_PROGRESS

Dave Goodell goodell at mcs.anl.gov
Wed Feb 27 08:14:01 CST 2013


On Feb 27, 2013, at 3:19 AM CST, Pavan Balaji wrote:

> On 02/25/2013 08:41 AM US Central Time, Jed Brown wrote:
>> It sounds like you are binding a process. Suppose hydra binds my process
>> to cpuset 0xf and my process pthread_creates a total of three threads.
>> If I bind those threads to 0x1, 0x2, 0x4, we still have the
>> MPICH_ASYNC_PROGRESS running with affinity 0xf, and as far as I know,
>> there is no way to bind it to 0x8.
>> 
>> It would be interesting to be able to specify this, both to place the
>> progress threads close to NICs and to make sure that progress threads do
>> not disrupt application threads (to reduce jitter and possibly improve
>> performance).
> 
> There's no plan to support per-thread binding.  This requires mpich to
> keep track of thread IDs, which AFAICT, we don't, unless I'm forgetting
> some piece deep inside MPICH (Dave or Jim should correct me, if I'm wrong).

We do use thread-ids in some cases, but we definitely aren't tracking the overall set of threads in existence or otherwise manipulating them.  I think we mainly use thread-ids to deal with thread-local storage in some cases.

-Dave




More information about the discuss mailing list