1
1
KAWASHIMA Takahiro 5ac95df9dc osc/pt2pt: use two distinct "namespaces" for tags - revised
Before this commit, a same PML tag may be used for distinct
communications for long messages. For example, consider a condition
where rank A calls ```MPI_PUT``` targeting rank B and rank B calls
```MPI_GET``` targeting rank A simultaneously.
A PML tag for the ```MPI_PUT``` is acquired on rank A and is used
for the long-message communication from rank A to rank B.
A PML tag for the ```MPI_GET``` is acquired on rank B and is used
for the long-message communication from rank A to rank B.
These two tags may become a same value because they are managed
independently on each rank. This will cause a data corruption.

This commit separates the tag used in a single RMA communication
call, one for communication from an origin to a target, and one
for communication from a target to an origin. A "base" tag
is acquired using ```get_tag``` function and PML tag is caluculated
from the base tag by ```tag_to_target``` and ```tag_to_origin```
function.
2016-04-11 19:05:20 +09:00
..
2016-03-18 10:59:46 -06:00
2016-03-28 10:52:40 -06:00
2016-03-29 15:50:32 -04:00
2015-06-23 20:59:57 -07:00
2015-12-01 15:08:07 -08:00
2015-12-28 13:58:45 +09:00
2015-06-23 20:59:57 -07:00
2015-06-23 20:59:57 -07:00