#746: new flesh APIs -------------------------+-------------------------------------------------- Reporter: jtao | Owner: Type: enhancement | Status: new Priority: major | Milestone: Cactus_4.1.0 Component: Cactus | Version: development version Keywords: | -------------------------+-------------------------------------------------- To support parallel programming on heterogeneous systems, it will be convenient to have the following APIs provided via flesh. These APIs will be helpful for properly handling the matching between devices (e.g. GPUs) and MPI processes.
// return a unique id for the local host; int CCTK_MyHost(cGH *cctkGH);
// return total number of nodes; int CCTK_nHosts(cGH *cctkGH);
// return number of mpi processes on a given host int CCTK_nProcsOnHost(const int host);
// return a list of process on a given host void CCTK_ProcsOnHost(const int host, int *procs);
Regards, Jian
#746: Add new flesh APIs for mapping between processes and hosts --------------------------+------------------------------------------------- Reporter: jtao | Owner: Type: enhancement | Status: new Priority: major | Milestone: Cactus_4.1.0 Component: Cactus | Version: development version Resolution: | Keywords: --------------------------+-------------------------------------------------
#746: Add new flesh APIs for mapping between processes and hosts --------------------------+------------------------------------------------- Reporter: jtao | Owner: Type: enhancement | Status: closed Priority: major | Milestone: Cactus_4.1.0 Component: Cactus | Version: development version Resolution: duplicate | Keywords: --------------------------+------------------------------------------------- Changes (by eschnett):
* status: new => closed * resolution: => duplicate
#746: Add new flesh APIs for mapping between processes and hosts --------------------------+------------------------------------------------- Reporter: jtao | Owner: Type: enhancement | Status: reopened Priority: major | Milestone: Cactus_4.1.0 Component: Cactus | Version: development version Resolution: | Keywords: --------------------------+------------------------------------------------- Changes (by hinder):
* status: closed => reopened * resolution: duplicate =>
Comment:
It was not a duplicate - I changed the summary to be more descriptive and the second TRAC email notification did not indicate that this was a summary-change rather than a new ticket . Unless you think there is already a ticket with this content?
#746: Add new flesh APIs for mapping between processes and hosts --------------------------+------------------------------------------------- Reporter: jtao | Owner: Type: enhancement | Status: reopened Priority: major | Milestone: Cactus_4.1.0 Component: Cactus | Version: development version Resolution: | Keywords: --------------------------+-------------------------------------------------
Comment (by eschnett):
Yes, I opened #744 two days ago.
The API suggested above is incomplete -- it is e.g. missing a function to find out which of the n processes on the current host I am. It also doesn't provide information about other hosts, which may be interesting (e.g. to combine MPI communication).
That's why I asked Jian to implement what he needs, and we'll derive a good API from that.
#746: Add new flesh APIs for mapping between processes and hosts --------------------------+------------------------------------------------- Reporter: jtao | Owner: Type: enhancement | Status: closed Priority: major | Milestone: Cactus_4.1.0 Component: Cactus | Version: development version Resolution: duplicate | Keywords: --------------------------+------------------------------------------------- Changes (by hinder):
* status: reopened => closed * resolution: => duplicate
Comment:
Oh sorry - I should have paid more attention.
trac@lists.einsteintoolkit.org