Skip to content
Snippets Groups Projects
Commit 27763d43 authored by Thomas Jahns's avatar Thomas Jahns :cartwheel: Committed by Sergey Kosukhin
Browse files

Clarify function.

parent 75a8911f
No related branches found
No related tags found
2 merge requests!34Version 2.2.0,!13Consolidation with CDI-PIO (develop)
......@@ -170,12 +170,14 @@ setupClientRanks(void)
static void
createClientStreamBuf(size_t streamIdx, const struct clientBufSize *bufSizes, const struct cdiPioConf *conf)
{
/* find and tabulate aggregate size needed for all clients of collector */
size_t streamBufferSize = 0;
for (size_t i = 0; i < (size_t) numClients_; ++i)
{
streamBufferSize += (rxWin[streamIdx].clientBuf[i].size = bufSizes[i].bufSize);
rxWin[streamIdx].clientBuf[i].dictSize = bufSizes[i].numDataRecords + bufSizes[i].numRPCRecords;
}
/* set pointer to RMA buffer for client 0 of collector */
if (conf->batchedRMA)
rxWin[streamIdx].clientBuf[0].mem = Malloc(streamBufferSize);
else
......@@ -191,16 +193,26 @@ createClientStreamBuf(size_t streamIdx, const struct clientBufSize *bufSizes, co
for (size_t j = 0; j < numStreams; ++j)
if (rxWin[j].getWin != MPI_WIN_NULL)
{
rxWin[j].clientBuf[0].mem = sharedClientBuf;
for (size_t i = 1; i < (size_t) numClients_; ++i)
rxWin[j].clientBuf[i].mem = rxWin[j].clientBuf[i - 1].mem + rxWin[j].clientBuf[i - 1].size;
unsigned char *newmem = sharedClientBuf;
for (size_t i = 0; i < (size_t) numClients_; ++i)
{
rxWin[j].clientBuf[i].mem = newmem;
newmem += rxWin[j].clientBuf[i].size;
}
}
}
}
rxWin[streamIdx].clientBuf[0].mem = sharedClientBuf;
}
for (size_t i = 1; i < (size_t) numClients_; ++i)
rxWin[streamIdx].clientBuf[i].mem = rxWin[streamIdx].clientBuf[i - 1].mem + rxWin[streamIdx].clientBuf[i - 1].size;
/* set pointers for other clients */
{
unsigned char *newmem = rxWin[streamIdx].clientBuf[0].mem;
for (size_t i = 1; i < (size_t) numClients_; ++i)
{
newmem += rxWin[streamIdx].clientBuf[i - 1].size;
rxWin[streamIdx].clientBuf[i].mem = newmem;
}
}
}
static void
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment