Ignore:
Timestamp:
05/15/20 16:42:10 (4 years ago)
Author:
ymipsl
Message:

XIOS coupling Branch

  • fix timestamp problem when receiving field from other coupling context
  • fix deadlock : when receiving index from coupling context, a collective communication was involved which is forbiden

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.hpp

    r1875 r1881  
    372372         std::map<int, std::map<int,int> > nbSenders_; 
    373373 
    374  
     374      private: 
    375375/** Maps storing the number of participating servers for data sent a specific client for a given contextClient. 
    376376  * Symetric of nbSenders_, but for server side which want to send data to client. 
    377377  * nbReadSender_[context_client_size] -> map the number of server sender by connected rank of clients 
    378   * nbReadSender_[context_client_size] [rank_client] -> the number of serverq participating to a send message for a client of rank "rank_client"  
     378  * nbReadSender_[context_client_size] [rank_client] -> the number of server participating to a send message for a client of rank "rank_client"  
    379379  * Usefull to indicate in a message the number of participant needed by the transfer protocol */ 
    380380         std::map<CContextClient*, std::map<int,int> > nbReadSenders_; 
    381  
     381      public: 
     382         std::map<int,int>& getNbReadSenders(CContextClient* client)  
     383         { if (nbReadSenders_.count(client)==0) computeNbReadSenders(client) ; return nbReadSenders_[client] ;} 
     384      private: 
     385         void computeNbReadSenders(CContextClient* client) ; 
     386      
    382387 
    383388// Manh Ha's comment: " A client receives global index from other clients (via recvIndex) 
Note: See TracChangeset for help on using the changeset viewer.