> MPI does not specify priority when discussing the
> execution scheduling of handlers. Shouldn't this be
> defined?
>
> One of the things I have come to expect from using
> handlers is that they run at a priority above the
> main thread. In particular, if the main thread and
> a handler competes for a processing resource the
> handlers wins.
>
> Maybe I am misunderstanding the specification, but isn't
> it possible that a handler which becomes runnable (a
> message has been received) may not execute immediately
> because the main thread which might also be runnable has
> control over the processing resource (when there is only
> one resource). I don't see anything in the specification
> that would negate this possibility. I can understand
> handlers being blocked by other handlers but not by
> non-handler threads.
>
> Perry Partow
> NCCOSC, RDT&E Div.
>
>
MPI specifications are not at that level (the handler may not be implemented
at all by a thread). The specification will guarantee a suitable progress
condition (handler must be invoked, even if process is in an infinite
computation loop) and a high quality implementation will make sure it is
invoked soon.
Marc Snir
IBM T.J. Watson Research Center
P.O. Box 218, Yorktown Heights, NY 10598
email: snir@watson.ibm.com
phone: 914-945-3204
fax: 914-945-4425
URL: http://www.research.ibm.com/people/s/snir