Changeset 2401 for XIOS3/trunk


Ignore:
Timestamp:
09/15/22 11:42:27 (21 months ago)
Author:
jderouillat
Message:

Implement a more homogeneous (BANDS) domain distribution on servers, especially when number of bands is smaller than number of clients.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS3/trunk/src/node/domain.cpp

    r2397 r2401  
    20402040        { 
    20412041          // nChunkPerServer(+1) client will send to 1 server 
     2042          if (nj_glo<nbChunk) 
     2043              nbChunk=nj_glo; 
    20422044          int nChunkPerServer = nbChunk/nbServer; 
    20432045          int nServerWithAdditionalChunk = nbChunk - nChunkPerServer*nbServer; 
     
    20572059          serverRank = rank; 
    20582060        } 
    2059         auto& globalInd =  globalIndex[serverRank] ; 
    2060         globalInd.resize(indSize) ; 
    2061         for(size_t n = 0 ; n<indSize; n++) globalInd(n)=indStart+n ; 
     2061        if (serverRank<client->getRemoteSize()) 
     2062        { 
     2063          auto& globalInd =  globalIndex[serverRank] ; 
     2064          globalInd.resize(indSize) ; 
     2065          for(size_t n = 0 ; n<indSize; n++) globalInd(n)=indStart+n ; 
     2066        } 
    20622067      } 
    20632068    } 
Note: See TracChangeset for help on using the changeset viewer.