Ignore:
Timestamp:
11/19/21 15:41:40 (3 years ago)
Author:
ymipsl
Message:

Improvment of one sided protocol

  • removed latency
  • solve dead-lock

YM

File:
1 edited

Legend:

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

    r2259 r2260  
    118118    { 
    119119      list<int> ranks = event.getRanks(); 
    120       info(100)<<"Event "<<timeLine<<" of context "<<context_->getId()<<endl ; 
     120  
     121//      ostringstream str ; 
     122//      for(auto& rank : ranks) str<<rank<<" ; " ; 
     123//      info(100)<<"Event "<<timeLine<<" of context "<<context_->getId()<<"  for ranks : "<<str.str()<<endl ; 
     124 
    121125      if (CXios::checkEventSync) 
    122126      { 
     
    165169 
    166170        unlockBuffers(ranks) ; 
    167         info(100)<<"Event "<<timeLine<<" of context "<<context_->getId()<<"  sent"<<endl ; 
    168            
    169171        checkBuffers(ranks); 
     172         
    170173      } 
    171174       
     
    346349      } 
    347350      buffer->attachWindows(windows_[rank]) ; 
     351      if (!isAttachedModeEnabled()) MPI_Barrier(winComm_[rank]) ; 
     352        
    348353   } 
    349354 
     
    525530  } 
    526531   
     532  bool CContextClient::havePendingRequests(list<int>& ranks) 
     533  { 
     534      list<int>::iterator it; 
     535      bool pending = false; 
     536      for (it = ranks.begin(); it != ranks.end(); it++) pending |= buffers[*it]->hasPendingRequest(); 
     537      return pending; 
     538  } 
     539 
    527540  bool CContextClient::isNotifiedFinalized(void) 
    528541  { 
Note: See TracChangeset for help on using the changeset viewer.