Ignore:
Timestamp:
07/31/17 17:59:25 (7 years ago)
Author:
mhnguyen
Message:

Fixing the blocking problem where there are more servers than the number of grid band distribution

+) Correct this problem not only for writing but also for reading
+) Allow "zero-size" domain, axis (i.e: domain, axis with ni = 0, and/or nj=0)

Test
+) On Curie
+) Work in both cases: Read and Write data

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/XIOS_DEV_CMIP6/src/node/context.hpp

    r1212 r1232  
    104104 
    105105         // Some functions to process context 
    106          void findAllEnabledFields(void); 
    107          void findAllEnabledFieldsInReadModeFiles(void); 
     106         void findAllEnabledFieldsInFiles(const std::vector<CFile*>& activeFiles); 
     107         // void findAllEnabledFields(void); 
     108         // void findAllEnabledFieldsInReadModeFiles(void); 
    108109         void readAttributesOfEnabledFieldsInReadModeFiles(); 
    109110         void solveAllInheritance(bool apply=true); 
    110111         void findEnabledFiles(void); 
     112         void findEnabledWriteModeFiles(void); 
    111113         void findEnabledReadModeFiles(void); 
    112114         void closeAllFile(void); 
    113115         void updateCalendar(int step); 
    114          void createFileHeader(void ); 
     116         void createFileHeader(void); 
     117         void initReadFiles(void); 
    115118         void checkAxisDomainsGridsEligibilityForCompressedOutput(); 
    116119         void prepareTimeseries(void); 
     
    127130         void solveAllRefOfEnabledFieldsAndTransform(bool sendToServer); 
    128131         void checkGridEnabledFields(); 
    129          void sendGridEnabledFields(); 
     132         void checkGridEnabledFieldsInFiles(const std::vector<CFile*>& activeFiles); 
     133         void sendGridEnabledFieldsInFiles(const std::vector<CFile*>& activeFiles);          
    130134 
    131135//         std::map<int, StdSize> getAttributesBufferSize(std::map<int, StdSize>& maxEventSize); 
     
    144148         void sendUpdateCalendar(int step); 
    145149         void sendCreateFileHeader(void); 
    146          void sendEnabledFiles(); 
    147          void sendEnabledFields(); 
    148          void sendRefDomainsAxis(); 
    149          void sendRefGrid(); 
     150         void sendEnabledFiles(const std::vector<CFile*>& activeFiles); 
     151         void sendEnabledFieldsInFiles(const std::vector<CFile*>& activeFiles); 
     152         void sendRefDomainsAxisScalars(const std::vector<CFile*>& activeFiles); 
     153         void sendRefGrid(const std::vector<CFile*>& activeFiles); 
    150154         void sendPostProcessing(); 
    151155         void sendPostProcessingGlobalAttributes(); 
Note: See TracChangeset for help on using the changeset viewer.