[Mpi-forum] MPI_T Events für Request Completion Callbacks
Joseph Schuchart
schuchart at hlrs.de
Mon Nov 25 08:43:43 CST 2019
Hallo Marc-André,
Jannis und ich hatten uns auf der SC kurz über MPI und Task-basierte
Programmiermodelle ausgetauscht. Wir sind uns mehr oder wenig einig,
dass MPI ein Interface braucht, das es dem Nutzer erlaubt asynchron über
den Abschluss von Operationen hinter einem Requests benachrichtigt zu
werden (sprich, ohne bzw bevor das Test/Wait auf dem Request aufgerufen
wird). Jannis (und ich glaube auch Martin) hatte in dem Kontext das
MPI_T Event Interface erwähnt um über die Events eine Benachrichtigung
zu bekommen. Da du leider nicht da warst wollten wir dich mal in die
Diskussion aufnehmen und fragen was mit den Events möglich ist:
1) Aynchrone Benachrichtigung über einen Callback sobald der Request als
completed erkannt wird?
2) Irgendeine Art von Nutzdaten die man an MPI übergeben kann und die
dann an den Callback übergeben werden?
3) Eine Garantie wann der Callback ausgeführt wird? (nicht zwingend
nötig, "immediately" wäre aber schön ^^)
Punkt 2 ist wichtig um zu vermeiden, dass die Anwendung zB ein Mapping
von Request auf das Objekt halten muss das von dem Request abhängt, zB
ein Task. Das würde mMn viel von den Vorteilen zunichte machen weil die
Anwendung dann wieder Speicher allokieren und sich um Locking etc
kümmern muss.
Aktuell schwebt mir sowas hier vor:
```
void completion_cb(void *data)
{
omp_event_handle_t *event = (omp_event_handle_t*)data;
omp_fulfill_event(*event);
}
[...]
omp_event_handle_t event;
#pragma omp task detach(event)
{
MPI_Request req;
MPI_Isend(..., &req);
MPI_Request_on_completion(request, &completion_cb, &event);
}
```
Ich arbeite gerade an einem Prototypen in Open MPI. Wenn sich das so
oder so ähnlich aber mit den MPI_T Events lösen lässt wäre es natürlich
umso besser. Ich glaube aber, dass Punkt 2 der Knackpunkt ist, oder?
Best Grüße
Joseph
--
Dipl.-Inf. Joseph Schuchart
High Performance Computing Center Stuttgart (HLRS)
Nobelstr. 19
D-70569 Stuttgart
Tel.: +49(0)711-68565890
Fax: +49(0)711-6856832
E-Mail: schuchart at hlrs.de
More information about the mpi-forum
mailing list