SX-Aurora / Vftrace

GNU General Public License v3.0
10 stars 2 forks source link

vfd file message sample extension #30

Closed SpinTensor closed 3 years ago

SpinTensor commented 3 years ago

The message information in the vfd file should be extended by an integer containing the (local)stackID (global is not known at this point) in order to assign the messages to the appropriate MPI-call. This is especially important for non-blocking communication where no connection between the MPI-call and messages could be made, otherwise.

This would require changes in the write-sync-message routines as they need to figure out the ID of the current stack, as well as the async routines which need to store the current stackID as part of the request list item.

Not sure at the moment how to handle persistent requests, but I guess it would be best to get the stack ID of the Start routine (not the Init).

The listed stackIDs in the vfd file are the global ones, which are not known at the point of messaging. Therefore a translation table between the local and global stack IDs need to be appended to the vfdfile (this requires a header entry for the translation table offset in the vfd). The size of the translation table will be sizeof(unsigned int) * nlocalIDs which will be a few KiB.

SpinTensor commented 3 years ago

vfdfiles work exclusively with local IDs. Thus a translation table is useless. Necessary changed are done.