Changeset 1077 for XIOS/dev/dev_olga/src/server.cpp
- Timestamp:
- 03/17/17 15:05:36 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/dev_olga/src/server.cpp
r1071 r1077 30 30 int CServer::nbContexts_ = 0; 31 31 bool CServer::isRoot = false ; 32 int CServer::rank = INVALID_RANK;32 int CServer::rank_ = INVALID_RANK; 33 33 StdOFStream CServer::m_infoStream; 34 34 StdOFStream CServer::m_errorStream; … … 81 81 82 82 MPI_Comm_size(CXios::globalComm, &size) ; 83 MPI_Comm_rank(CXios::globalComm, &rank );83 MPI_Comm_rank(CXios::globalComm, &rank_); 84 84 85 85 hashAll=new unsigned long[size] ; … … 104 104 if (CXios::usingServer2) 105 105 { 106 int serverRank = rank - leaders[hashServer]; // server proc rank starting 0106 int serverRank = rank_ - leaders[hashServer]; // server proc rank starting 0 107 107 serverSize_ = size - leaders[hashServer]; 108 108 nbPools = serverSize_ * CXios::ratioServer2 / 100; … … 115 115 serverLevel = 2; 116 116 poolId = serverRank - serverSize_ + nbPools; 117 myColor = rank ;117 myColor = rank_; 118 118 } 119 119 } 120 120 121 MPI_Comm_split(CXios::globalComm, myColor, rank , &intraComm) ;121 MPI_Comm_split(CXios::globalComm, myColor, rank_, &intraComm) ; 122 122 123 123 if (serverLevel == 0) … … 132 132 MPI_Comm_size(intraComm,&intraCommSize) ; 133 133 MPI_Comm_rank(intraComm,&intraCommRank) ; 134 info(50)<<"intercommCreate::server "<<rank <<" intraCommSize : "<<intraCommSize134 info(50)<<"intercommCreate::server "<<rank_<<" intraCommSize : "<<intraCommSize 135 135 <<" intraCommRank :"<<intraCommRank<<" clientLeader "<< clientLeader<<endl ; 136 136 … … 152 152 MPI_Comm_size(intraComm, &intraCommSize) ; 153 153 MPI_Comm_rank(intraComm, &intraCommRank) ; 154 info(50)<<"intercommCreate::server "<<rank <<" intraCommSize : "<<intraCommSize154 info(50)<<"intercommCreate::server "<<rank_<<" intraCommSize : "<<intraCommSize 155 155 <<" intraCommRank :"<<intraCommRank<<" clientLeader "<< clientLeader<<endl ; 156 156 MPI_Intercomm_create(intraComm, 0, CXios::globalComm, clientLeader, 0, &newComm) ; … … 167 167 MPI_Comm_size(intraComm, &intraCommSize) ; 168 168 MPI_Comm_rank(intraComm, &intraCommRank) ; 169 info(50)<<"intercommCreate::client "<<rank <<" intraCommSize : "<<intraCommSize169 info(50)<<"intercommCreate::client "<<rank_<<" intraCommSize : "<<intraCommSize 170 170 <<" intraCommRank :"<<intraCommRank<<" clientLeader "<< srvSndLeader<<endl ; 171 171 MPI_Intercomm_create(intraComm, 0, CXios::globalComm, srvSndLeader, 0, &newComm) ; … … 180 180 MPI_Comm_size(intraComm, &intraCommSize) ; 181 181 MPI_Comm_rank(intraComm, &intraCommRank) ; 182 info(50)<<"intercommCreate::server "<<rank <<" intraCommSize : "<<intraCommSize182 info(50)<<"intercommCreate::server "<<rank_<<" intraCommSize : "<<intraCommSize 183 183 <<" intraCommRank :"<<intraCommRank<<" clientLeader "<< clientLeader<<endl ; 184 184 … … 202 202 MPI_Comm_dup(localComm, &intraComm); 203 203 204 MPI_Comm_rank(intraComm,&rank ) ;204 MPI_Comm_rank(intraComm,&rank_) ; 205 205 MPI_Comm_size(intraComm,&size) ; 206 206 string codesId=CXios::getin<string>("oasis_codes_id") ; … … 217 217 { 218 218 oasis_get_intercomm(newComm,*it) ; 219 if (rank ==0) MPI_Send(&globalRank,1,MPI_INT,0,0,newComm) ;219 if (rank_==0) MPI_Send(&globalRank,1,MPI_INT,0,0,newComm) ; 220 220 MPI_Comm_remote_size(newComm,&size); 221 221 // interComm.push_back(newComm) ; … … 225 225 } 226 226 227 int rankServer; 228 MPI_Comm_rank(intraComm, &rankServer) ; 229 if (rankServer==0) isRoot=true; 227 MPI_Comm_rank(intraComm, &rank_) ; 228 if (rank_==0) isRoot=true; 230 229 else isRoot=false; 231 230 … … 249 248 // MPI_Comm_free(&(*it)); 250 249 251 for (std::list<MPI_Comm>::iterator it = interCommLeft.begin(); it != interCommLeft.end(); it++)252 MPI_Comm_free(&(*it));250 // for (std::list<MPI_Comm>::iterator it = interCommLeft.begin(); it != interCommLeft.end(); it++) 251 // MPI_Comm_free(&(*it)); 253 252 254 253 for (std::list<MPI_Comm>::iterator it = interCommRight.begin(); it != interCommRight.end(); it++) … … 524 523 { 525 524 StdString str = contextId +"_server_" + boost::lexical_cast<string>(i); 526 msg<<str<<size<<rank ;525 msg<<str<<size<<rank_ ; 527 526 messageSize = msg.size() ; 528 527 buff = new char[messageSize] ; … … 555 554 if (finished) 556 555 { 557 // it->second->freeComms(); // deallocate internally allcoated context communicators556 it->second->freeComms(); // deallocate internally allocated context communicators 558 557 contextList.erase(it) ; 559 558 break ; 560 559 } 561 560 else 562 {563 561 finished=it->second->checkBuffersAndListen(); 564 }565 562 } 566 563 } … … 569 566 int CServer::getRank() 570 567 { 571 return rank ;568 return rank_; 572 569 } 573 570 … … 598 595 { 599 596 if (serverLevel == 1) 600 id = rank -serverLeader_;597 id = rank_; 601 598 else 602 599 id = poolId;
Note: See TracChangeset
for help on using the changeset viewer.