Ignore:
Timestamp:
11/13/14 15:09:28 (10 years ago)
Author:
mhnguyen
Message:

Seperating database of context on "client" side and "server" side

+) Add one more context in contex client in case of attached mode
+) Do some minor changements to make sure everything fine in case of attached mode
+) Replace buffer group with the new options

Test
+) On Curie
+) Connection mode: Attached and seperated
+) File mode: one and multiple
+) All tests passed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/cxios.cpp

    r509 r511  
    2929  bool CXios::printInfo2File; 
    3030  bool CXios::isServerSide; 
    31  
     31  bool CXios::isOptPerformance = true; 
    3232 
    3333  void CXios::initialize() 
     
    3535    set_new_handler(noMemory); 
    3636    parseFile(rootFile); 
     37    parseXiosConfig(); 
     38  } 
     39 
     40  void CXios::parseXiosConfig() 
     41  { 
    3742    usingOasis=getin<bool>("using_oasis",false) ; 
    3843    usingServer=getin<bool>("using_server",false) ; 
    3944    info.setLevel(getin<int>("info_level",0)) ; 
     45    report.setLevel(getin<int>("info_level",0)); 
    4046    printInfo2File=getin<bool>("print_file",false); 
    4147    bufferSize=getin<size_t>("buffer_size",defaultBufferSize) ; 
    42     bufferServerFactorSize=getin<double>("buffer_server_factor_size",defaultBufferServerFactorSize) ; 
     48    StdString bufMemory("memory"); 
     49    StdString bufPerformance("performance"); 
     50    StdString bufOpt = getin<StdString>("optimal_buffer_size", bufPerformance); 
     51    std::transform(bufOpt.begin(), bufOpt.end(), bufOpt.begin(), ::tolower); 
     52    if (0 == bufOpt.compare(bufMemory)) isOptPerformance = false; 
     53    else if (0 != bufOpt.compare(bufPerformance)) 
     54    { 
     55      ERROR("CXios::parseXiosConfig()", << "optimal_buffer_size must be memory or performance "<< endl ); 
     56    } 
     57 
     58//    bufferServerFactorSize=getin<double>("buffer_server_factor_size",defaultBufferServerFactorSize) ; 
     59    bufferServerFactorSize=getin<double>("buffer_factor_size",defaultBufferServerFactorSize) ; 
    4360    globalComm=MPI_COMM_WORLD ; 
    4461  } 
    45  
    4662 
    4763  void CXios::initClientSide(const string& codeId, MPI_Comm& localComm, MPI_Comm& returnComm) 
     
    7995    parseList.insert("xios"); 
    8096    xml::CXMLParser::ParseFile(rootFile, parseList); 
    81 //    parseFile(rootFile); 
    82     usingOasis=getin<bool>("using_oasis",false) ; 
    83     info.setLevel(getin<int>("info_level",0)) ; 
    84     printInfo2File=getin<bool>("print_file",false); 
    85     bufferSize=getin<size_t>("buffer_size",defaultBufferSize) ; 
    86     bufferServerFactorSize=getin<double>("buffer_server_factor_size",defaultBufferServerFactorSize) ; 
    87     globalComm=MPI_COMM_WORLD ; 
    88  
     97    parseXiosConfig(); 
    8998  } 
    9099 
Note: See TracChangeset for help on using the changeset viewer.