From 94652988f67b3215701b39a1e560078bf4883218 Mon Sep 17 00:00:00 2001 From: FKHals <5229803-FKHals@users.noreply.gitlab.com> Date: Tue, 11 May 2021 18:10:38 +0200 Subject: [PATCH] Add vpid to data that is send to agent to make the mapping <jobid>,<vpid> -> <rank> possible. --- ompi/communicator/comm_init.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ompi/communicator/comm_init.c b/ompi/communicator/comm_init.c index 3766fb2380..ab1b87b190 100644 --- a/ompi/communicator/comm_init.c +++ b/ompi/communicator/comm_init.c @@ -96,7 +96,7 @@ static void errorExit(char* msg) { } // TODO: Change int return to size_t! -static int getProcessAgentRank(uint32_t jobid, size_t size) { +static int getProcessAgentRank(uint32_t jobid, uint32_t vpid, size_t size) { struct sockaddr_un strAddr; socklen_t lenAddr; int fdSock; @@ -115,7 +115,9 @@ static int getProcessAgentRank(uint32_t jobid, size_t size) { pid_t pid = getpid(); char info_to_send[BUFFLEN]; - snprintf(info_to_send, BUFFLEN+1, "Spawned - PID: %d, jobID: %u, size: %zu", pid, jobid, size); + snprintf(info_to_send, BUFFLEN+1, + "Spawned - PID: %d, vpid: %u, jobID: %u, size: %zu", + pid, vpid, jobid, size); if (send(fdSock, info_to_send, BUFFLEN+1, 0) < 0) { errorExit("send"); } @@ -165,7 +167,7 @@ int ompi_comm_init(void) opal_process_name_t name = {.vpid = i, .jobid = OMPI_PROC_MY_NAME->jobid}; /* get desired rank from agent (must be within size!)*/ // TODO: Change int to size_t - size_t desired_rank = getProcessAgentRank(name.jobid, size); + size_t desired_rank = getProcessAgentRank(name.jobid, name.vpid, size); printf("INIT Loop Rank: %zu\n", desired_rank); /* look for existing ompi_proc_t that matches this name */ group->grp_proc_pointers[desired_rank] = (ompi_proc_t *) ompi_proc_lookup (name); -- GitLab