Changeset 2524


Ignore:
Timestamp:
06/23/23 16:22:08 (12 months ago)
Author:
jderouillat
Message:

Replace MPI probing on intercommunicator by probing on intracommunicator for one_sided transport_protocol

Location:
XIOS3/branches/xios-3.0-beta/src/transport
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • XIOS3/branches/xios-3.0-beta/src/transport/one_sided_client_buffer.cpp

    r2399 r2524  
    88  extern CLogType logProtocol; 
    99 
    10   COneSidedClientBuffer::COneSidedClientBuffer(MPI_Comm& interComm, int serverRank, MPI_Comm& commSelf, MPI_Comm& interCommMerged, int intraServerRank) : interComm_(interComm), serverRank_(serverRank) 
     10  COneSidedClientBuffer::COneSidedClientBuffer(MPI_Comm& interComm, int serverRank, MPI_Comm& commSelf, MPI_Comm& interCommMerged, int intraServerRank) : interComm_(interComm), serverRank_(serverRank), interCommMerged_(interCommMerged), intraServerRank_(intraServerRank) 
    1111  { 
    1212     
     
    261261    } 
    262262    if (info.isActive(logProtocol)) CTimer::get("sendTimelineEvent : MPI_Isend").resume() ; 
    263     MPI_Isend(request.buffer->start(),request.buffer->count(), MPI_CHAR, serverRank_, 20, interComm_, &request.mpiRequest ) ; 
     263    MPI_Isend(request.buffer->start(),request.buffer->count(), MPI_CHAR, intraServerRank_, 20, interCommMerged_, &request.mpiRequest ) ; 
    264264    if (info.isActive(logProtocol)) CTimer::get("sendTimelineEvent : MPI_Isend").suspend() ; 
    265265    info(logProtocol)<<outStr.str()<<endl ; 
     
    272272    request.buffer = new CBufferOut(sizeof(EVENT_BUFFER_RESIZE)+sizeof(timeline)+sizeof(size)) ;  
    273273    *(request.buffer)<<EVENT_BUFFER_RESIZE<<timeline<<size ; 
    274     MPI_Isend(request.buffer->start(),request.buffer->count(), MPI_CHAR, serverRank_, 20, interComm_, &request.mpiRequest ) ; 
     274    MPI_Isend(request.buffer->start(),request.buffer->count(), MPI_CHAR, intraServerRank_, 20, interCommMerged_, &request.mpiRequest ) ; 
    275275    requests_.push_back(request) ; 
    276276  } 
     
    280280    MPI_Aint controlAddr ; 
    281281    MPI_Get_address(control_, &controlAddr) ; 
    282     MPI_Send(&controlAddr, 1, MPI_AINT, serverRank_, 20, interComm_) ; 
     282    MPI_Send(&controlAddr, 1, MPI_AINT, intraServerRank_, 20, interCommMerged_) ; 
    283283  } 
    284284 
  • XIOS3/branches/xios-3.0-beta/src/transport/one_sided_client_buffer.hpp

    r2399 r2524  
    182182      int serverRank_ ; 
    183183 
     184      MPI_Comm interCommMerged_;  
     185      int intraServerRank_ ; 
     186 
    184187      std::list<CBuffer*> buffers_ ; 
    185188      std::list<SBloc> blocs_ ; 
  • XIOS3/branches/xios-3.0-beta/src/transport/one_sided_context_server.cpp

    r2399 r2524  
    9898    { 
    9999      traceOff(); 
    100       MPI_Iprobe(MPI_ANY_SOURCE, 20,interComm, &flag, &status); 
     100      MPI_Iprobe(MPI_ANY_SOURCE, 20,interCommMerged_, &flag, &status); 
    101101      traceOn(); 
    102102      if (flag==true) 
    103103      { 
    104         requests_.push_back(CRequest(interComm, status)) ; 
     104        requests_.push_back(CRequest(interCommMerged_, status)) ; 
    105105        if (requests_.back().test())  
    106106        { 
Note: See TracChangeset for help on using the changeset viewer.