Ignore:
Timestamp:
06/29/22 18:19:45 (2 years ago)
Author:
ymipsl
Message:
  • Implement new infrastructure for transfert protocol.
  • new purelly one sided protocol is now available, the previous protocol (legacy, mix send/recv and one sided) is still available. Other specific protocol could be implemented more easilly in future.
  • switch can be operate with "transport_protocol" variable in XIOS context :

ex:
<variable id="transport_protocol" type="string">one_sided</variable>

Available protocols are : one_sided, legacy or default. The default protocol is "legacy".

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/node/axis.cpp

    r2339 r2343  
    190190     { 
    191191       // size estimation for sendDistributedValue 
    192        std::unordered_map<int, vector<size_t> >::const_iterator it, ite = indSrv_[client->serverSize].end(); 
    193        for (it = indSrv_[client->serverSize].begin(); it != ite; ++it) 
     192       std::unordered_map<int, vector<size_t> >::const_iterator it, ite = indSrv_[client->getRemoteSize()].end(); 
     193       for (it = indSrv_[client->getRemoteSize()].begin(); it != ite; ++it) 
    194194       { 
    195195         size_t size = 6 * sizeof(size_t); 
     
    890890    if (type==EDistributionType::BANDS) // Bands distribution to send to file server 
    891891    { 
    892       int nbServer = client->serverSize; 
    893       int nbClient = client->clientSize ; 
    894       int rankClient = client->clientRank ; 
     892      int nbServer = client->getRemoteSize(); 
     893      int nbClient = client->getIntraCommSize() ; 
     894      int rankClient = client->getIntraCommRank() ; 
    895895      int size = nbServer / nbClient ; 
    896896      int start ; 
     
    921921    else if (type==EDistributionType::NONE) // domain is not distributed ie all servers get the same local domain 
    922922    { 
    923       int nbServer = client->serverSize; 
     923      int nbServer = client->getRemoteSize(); 
    924924      size_t nglo=n_glo ; 
    925925      CArray<size_t,1> indGlo(nglo) ; 
Note: See TracChangeset for help on using the changeset viewer.