[mpiwg-tools] Tool question about handling requests in completion calls

Joachim Protze protze at itc.rwth-aachen.de
Thu Aug 12 09:23:20 CDT 2021

Hi all,

working on a tool, I'm wondering whether someone has a better solution
than copying the whole array before calling the PMPI function.

In the tool, we want to observe the lifetime of requests and
semantically bind information to the request handle (e.g.
std::map<MPI_Request, tool_info*>).
When we observe completion of the request, the request handle passed by
the application is already reset to MPI_REQUEST_NULL and cannot be used
for the lookup. So, we need to copy the whole array of requests in order
to lookup the information for the request after the PMPI call.

For a call like MPI_Testany, this means to copy /count/ values to
possibly use one of the values.

Is there any chance to improve the situation? Would it be possible to
bind the request handle to the status object for reference?
It is clear that the request handle is invalid at that moment, but could
still be used for some lookup.

Alternatively, it would help to bind an info(?) object to the request
handle, which moves to the status on completion.


Dipl.-Inf. Joachim Protze

IT Center
Group: High Performance Computing
Division: Computational Science and Engineering
RWTH Aachen University
Seffenter Weg 23
D 52074  Aachen (Germany)
Tel: +49 241 80- 24765
Fax: +49 241 80-624765
protze at itc.rwth-aachen.de

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5327 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.mpi-forum.org/pipermail/mpiwg-tools/attachments/20210812/fa842f9e/attachment.p7s>

More information about the mpiwg-tools mailing list