Changeset 1021 for XIOS/dev/dev_olga/src/client.cpp
- Timestamp:
- 01/10/17 14:36:29 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/dev_olga/src/client.cpp
r1009 r1021 57 57 58 58 unsigned long hashClient = hashString(codeId) ; 59 unsigned long hashServer = hashString(CXios::xiosCodeIdPrm); 59 unsigned long hashServer = hashString(CXios::xiosCodeId); 60 // unsigned long hashServer = hashString(CXios::xiosCodeIdPrm); 60 61 unsigned long* hashAll ; 61 62 int size ; … … 88 89 for (i=0; i < size; ++i) 89 90 { 90 if ( (hashAll[i] == hashString(CXios::xiosCodeId))91 || (hashAll[i] == hashString(CXios::xiosCodeIdPrm))92 || (hashAll[i] == hashString(CXios::xiosCodeIdSnd)))91 if (hashAll[i] == hashString(CXios::xiosCodeId)) 92 // || (hashAll[i] == hashString(CXios::xiosCodeIdPrm)) 93 // || (hashAll[i] == hashString(CXios::xiosCodeIdSnd))) 93 94 { 94 95 CXios::setUsingServer(); … … 103 104 { 104 105 int clientLeader=leaders[hashClient] ; 105 // serverLeader=leaders[hashServer] ;106 106 serverLeader.push_back(leaders[hashServer]) ; 107 107 int intraCommSize, intraCommRank ; … … 111 111 <<" intraCommRank :"<<intraCommRank<<" clientLeader "<< serverLeader.back()<<endl ; 112 112 MPI_Intercomm_create(intraComm, 0, CXios::globalComm, serverLeader.back(), 0, &interComm) ; 113 // info(50)<<"intercommCreate::client "<<rank<<" intraCommSize : "<<intraCommSize114 // <<" intraCommRank :"<<intraCommRank<<" clientLeader "<< serverLeader<<endl ;115 // MPI_Intercomm_create(intraComm,0,CXios::globalComm,serverLeader,0,&interComm) ;116 113 } 117 114 else … … 181 178 /*! 182 179 * \fn void CClient::registerContext(const string& id, MPI_Comm contextComm) 183 * Function creates intraComm (CClient::intraComm) for client group with id=codeId and interComm (CClient::interComm) between client and server groups.180 * \brief Sends a request to create a context to server. Creates client/server contexts. 184 181 * \param [in] id id of context. 185 182 * \param [in] contextComm. 183 * Function is only called by client. 186 184 */ 187 185 void CClient::registerContext(const string& id, MPI_Comm contextComm) … … 250 248 } 251 249 252 ///--------------------------------------------------------------- 253 /*! 254 * \fn void CClient::registerContext(const string& id, const int poolNb, MPI_Comm contextComm) 255 * Function creates intraComm (CClient::intraComm) for client group with id=codeId and interComm (CClient::interComm) between client and server groups. 256 * \param [in] id id of context. 257 * \param [in] contextComm. 258 */ 259 void CClient::registerContextOnSrvPools(const string& id, MPI_Comm contextComm) 250 ///--------------------------------------------------------------- 251 /*! 252 * \fn void CClient::registerContextByClienOfServer(const string& id, MPI_Comm contextComm) 253 * \brief Sends a request to create contexts on secondary servers. Creates clientPrimServer/serverPrimServer contexts. 254 * \param [in] id id of context. 255 * \param [in] contextComm. 256 * Function is called by primary server. 257 * The only difference with CClient::registerContext() is naming of contexts on servers (appearing of pool id at the end). 258 */ 259 void CClient::registerContextByClienOfServer(const string& id, MPI_Comm contextComm) 260 260 { 261 261 CContext::setCurrent(id) ;
Note: See TracChangeset
for help on using the changeset viewer.