Ignore:
Timestamp:
03/31/17 20:26:21 (7 years ago)
Author:
yushan
Message:

save current modifications

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_yushan/src/node/context.cpp

    r1080 r1081  
    239239   { 
    240240     hasClient=true; 
    241      client = new CContextClient(this,intraComm, interComm, cxtServer); 
     241      
     242     #pragma omp critical 
     243     client = new CContextClient(this, intraComm, interComm, cxtServer); 
     244 
    242245 
    243246     int tmp_rank; 
     
    245248     MPI_Barrier(intraComm); 
    246249      
     250     #pragma omp critical 
     251     registryIn=new CRegistry(intraComm); 
    247252      
     253 
     254     registryIn->setPath(getId()) ; 
    248255      
    249      registryIn=new CRegistry(intraComm); 
    250  
    251256     #pragma omp critical (_output) 
    252      printf("Client %d : registryIn=new CRegistry(intraComm), &registryIn = %p, registryIn = %p \n", tmp_rank, &registryIn, registryIn) ; 
    253  
    254      // registryIn=new CRegistry; 
    255      // registryIn->communicator = intraComm; 
    256      registryIn->setPath(getId()) ; 
     257     printf("Client %d : registryIn->setPath(getId()=%s), clientRank = %d (%p) \n", tmp_rank, getId(), client->clientRank, &(client->clientRank)) ; 
     258     printf("Client %d : context.identifier = %d\n", tmp_rank, this->get_identifier()); 
     259 
    257260     if (client->clientRank==0) registryIn->fromFile("xios_registry.bin") ; 
    258261     registryIn->bcastRegistry() ; 
     
    260263     registryOut=new CRegistry(intraComm) ; 
    261264     registryOut->setPath(getId()) ; 
     265      
    262266     #pragma omp critical (_output) 
    263      printf("Client %d : registryOut->setPath(getId()) \n", tmp_rank) ; 
     267     printf("Client %d : registryOut->setPath(getId()=%s) \n", tmp_rank, getId()) ; 
    264268 
    265269     ep_lib::MPI_Comm intraCommServer, interCommServer; 
     
    11921196  */ 
    11931197   //bkp 
    1194 //   CContext* CContext::create(const StdString& id) 
    1195 //   { 
    1196 //     CContext::setCurrent(id); 
    1197  
    1198 //     bool hasctxt = CContext::has(id); 
    1199 //     CContext* context = CObjectFactory::CreateObject<CContext>(id).get(); 
    1200 //     getRoot(); 
    1201 //     if (!hasctxt) CGroupFactory::AddChild(root, context->getShared()); 
    1202  
    1203 // #define DECLARE_NODE(Name_, name_) \ 
    1204 //     C##Name_##Definition::create(C##Name_##Definition::GetDefName()); 
    1205 // #define DECLARE_NODE_PAR(Name_, name_) 
    1206 // #include "node_type.conf" 
    1207  
    1208 //     return (context); 
    1209 //   } 
    1210  
    1211  
    12121198  CContext* CContext::create(const StdString& id) 
    12131199  { 
    12141200    CContext::setCurrent(id); 
    12151201 
    1216  
    12171202    bool hasctxt = CContext::has(id); 
    1218     CContext* context[omp_get_num_threads()]; 
    1219     for(int i=0; i<omp_get_num_threads(); i++) 
    1220     { 
    1221  
    1222      context[i] = CObjectFactory::CreateObject<CContext>(id).get(); 
    1223      getRoot(); 
    1224      if (!hasctxt) CGroupFactory::AddChild(root, context[i]->getShared()); 
     1203    CContext* context = CObjectFactory::CreateObject<CContext>(id).get(); 
     1204    getRoot(); 
     1205    if (!hasctxt) CGroupFactory::AddChild(root, context->getShared()); 
    12251206 
    12261207#define DECLARE_NODE(Name_, name_) \ 
    1227      C##Name_##Definition::create(C##Name_##Definition::GetDefName()); 
     1208    C##Name_##Definition::create(C##Name_##Definition::GetDefName()); 
    12281209#define DECLARE_NODE_PAR(Name_, name_) 
    12291210#include "node_type.conf" 
    1230     } 
    1231     int tmp_rank; 
    1232     MPI_Comm_rank(MPI_COMM_WORLD, &tmp_rank); 
    1233     printf("CContext::create : num_threads = %d, my_id = %d, return add = %p\n", omp_get_num_threads(), tmp_rank, &(context[omp_get_thread_num()])); 
    1234      
    1235     return (context[omp_get_thread_num()]); 
     1211 
     1212    return (context); 
    12361213  } 
     1214 
     1215  int CContext::get_identifier() 
     1216  { 
     1217    return this->identifier; 
     1218  } 
     1219 
    12371220 
    12381221     //! Server side: Receive a message to do some post processing 
Note: See TracChangeset for help on using the changeset viewer.