Changeset 1958


Ignore:
Timestamp:
10/08/20 13:14:05 (4 years ago)
Author:
ymipsl
Message:

Xios coupling

  • fix problem when sending grid mask from client to server
  • remove methods about grid compression, which will be managed in other ways

=> miss some files in previous commit

YM

Location:
XIOS/dev/dev_ym/XIOS_COUPLING/src/node
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/node/scalar.cpp

    r1943 r1958  
    303303  } 
    304304  
    305   void CScalar::distributeToServer(CContextClient* client, std::map<int, CArray<size_t,1>>& globalIndex,  const string& scalarId) 
    306   { 
    307     
     305  void CScalar::distributeToServer(CContextClient* client, std::map<int, CArray<size_t,1>>& globalIndex,  
     306                                   CScattererConnector* &scattererConnector, const string& scalarId) 
     307  { 
    308308    string serverScalarId = scalarId.empty() ? this->getId() : scalarId ; 
    309309    CContext* context = CContext::getCurrent(); 
     
    313313    CDistributedElement scatteredElement(1,globalIndex) ; 
    314314    scatteredElement.addFullView() ; 
    315     CScattererConnector scattererConnector(localElement_->getView(CElementView::FULL), scatteredElement.getView(CElementView::FULL),  
    316                                            context->getIntraComm(), client->getRemoteSize()) ; 
    317     scattererConnector.computeConnector() ; 
     315    scattererConnector = new CScattererConnector(localElement_->getView(CElementView::FULL), scatteredElement.getView(CElementView::FULL),  
     316                                                 context->getIntraComm(), client->getRemoteSize()) ; 
     317    scattererConnector->computeConnector() ; 
    318318     
    319319    // phase 0 
     
    329329    CMessage message1 ; 
    330330    message1<<serverScalarId<<1<<localElement_->getView(CElementView::FULL)->getGlobalSize() ;  
    331     scattererConnector.transfer(localElement_->getView(CElementView::FULL)->getGlobalIndex(),client,event1,message1) ; 
    332  
    333     sendDistributedAttributes(client, scattererConnector, scalarId) ; 
     331    scattererConnector->transfer(localElement_->getView(CElementView::FULL)->getGlobalIndex(),client,event1,message1) ; 
     332 
     333    sendDistributedAttributes(client, *scattererConnector, scalarId) ; 
    334334   
    335335    // phase 2 send the mask : data index + mask2D 
     
    344344    map<int,CArray<size_t,1>> workflowGlobalIndex ; 
    345345    map<int,CArray<bool,1>> maskOut2 ;  
    346     scattererConnector.transfer(maskOut, maskOut2) ; 
     346    scattererConnector->transfer(maskOut, maskOut2) ; 
    347347    scatteredElement.addView(CElementView::WORKFLOW, maskOut2) ; 
    348348    scatteredElement.getView(CElementView::WORKFLOW)->getGlobalIndexView(workflowGlobalIndex) ; 
     
    396396    else if (phasis==2) 
    397397    { 
    398       delete gathererConnector_ ; 
     398//      delete gathererConnector_ ; 
    399399      elementFrom_ = new  CDistributedElement(event) ; 
    400400      elementFrom_->addFullView() ; 
    401       gathererConnector_ =  new CGathererConnector(elementFrom_->getView(CElementView::FULL), localElement_->getView(CElementView::FULL)) ; 
    402       gathererConnector_ -> computeConnector() ; 
     401//      gathererConnector_ =  new CGathererConnector(elementFrom_->getView(CElementView::FULL), localElement_->getView(CElementView::FULL)) ; 
     402//      gathererConnector_ -> computeConnector() ; 
    403403    } 
    404404  } 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/node/scalar.hpp

    r1943 r1958  
    175175       public: 
    176176         void computeRemoteElement(CContextClient* client, EDistributionType) ; 
    177          void distributeToServer(CContextClient* client, std::map<int, CArray<size_t,1>>& globalIndex, const string& scalarId="") ; 
     177         void distributeToServer(CContextClient* client, std::map<int, CArray<size_t,1>>& globalIndex, CScattererConnector* &scattererConnector, 
     178                                 const string& scalarId="") ; 
     179 
    178180         static void recvScalarDistribution(CEventServer& event) ; 
    179181         void receivedScalarDistribution(CEventServer& event, int phasis) ; 
Note: See TracChangeset for help on using the changeset viewer.