Skip to content
Snippets Groups Projects

Consolidation with CDI-PIO (develop)

Merged Sergey Kosukhin requested to merge m300488/develop-rebase into develop
1 file
+ 10
6
Compare changes
  • Side-by-side
  • Inline
+ 10
6
@@ -452,6 +452,15 @@ cdiPioNetCDFParChunk(int vlistID, int varID, Xt_idxlist *preWriteChunk, struct P
}
#endif
static void
allocUIDLookup(size_t numClients, Xt_uid *restrict *uids, int *restrict *partSizes)
{
size_t uidBytes = sizeof(**uids) * (numClients + 1), partSizesBytes = sizeof(**partSizes) * (numClients + 1),
partSizeAlign = sizeof(**partSizes), uidBytesRoundUp = ((uidBytes + partSizeAlign - 1) / partSizeAlign * partSizeAlign);
*uids = Malloc(uidBytes + uidBytesRoundUp + partSizesBytes);
*partSizes = (int *) (void *) ((unsigned char *) *uids + uidBytes + uidBytesRoundUp);
}
static Xt_redist
buildVarRedist(int headerIdx, size_t streamIdx,
/* index list representing the data elements gathered on
@@ -473,12 +482,7 @@ buildVarRedist(int headerIdx, size_t streamIdx,
bool cacheXmaps = conf->cacheXmaps;
if (cacheXmaps)
{
{
size_t uidBytes = sizeof(*uids) * (numClients + 1), partSizesBytes = sizeof(*partSizes) * (numClients + 1),
partSizeAlign = sizeof(*partSizes), uidBytesRoundUp = (uidBytes + partSizeAlign - 1) / partSizeAlign * partSizeAlign;
uids = Malloc(uidBytes + uidBytesRoundUp + partSizesBytes);
partSizes = (int *) (void *) ((unsigned char *) uids + uidBytes + uidBytesRoundUp);
}
allocUIDLookup(numClients, &uids, &partSizes);
uids[0] = xt_idxlist_get_uid(dstList);
for (size_t clientIdx = 0; clientIdx < numClients; ++clientIdx)
{
Loading