Changes between Version 4 and Version 5 of OfflineAdaptParallelization
- Timestamp:
- May 18, 2025, 3:39:33 PM (5 hours ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
OfflineAdaptParallelization
v4 v5 6 6 <h4>Offline Mode: Implementation Guide</h4> 7 7 <ol><li><a href="OfflineImplementationGuide">Main page</a></li> 8 <li> Adaptation ofthe parallelization</li>8 <li>Initializing the parallelization</li> 9 9 <li><a href="OfflineInitPdaf">Initialization of PDAF</a></li> 10 10 <li><a href="OfflineImplementationofAnalysisStep">Implementation of the analysis step</a></li> … … 18 18 == Overview == 19 19 20 Like many numerical models, PDAF uses the MPI standard for the parallelization. 20 The PDAF release provides template code for the offline mode in `templates/offline`. We refer to this code to use it as a basis. 21 21 22 The offline mode of PDAF can be used without explicit parallelization. In this case, the assimilation program does not need to be compiled with an MPI libraries. It is sufficient to compiler with the dummy implementation of MPI for a single process that is supplied with the source code of PDAF. Even in this case, it is necessary to execute the routine `init_parallel_pdaf` as described below. 22 If the template code in `templates/offline` or the tutorial implementation `tutorial/offline_2D_parallel` is used as the base for the implementation, it should be possible to simply keep this part of the program, i.e. the call to `init_parallel_pdaf` unchanged and directly proceed to the [OfflineInitPdaf initialization of PDAF] for the offline mode. 23 23 24 If the assimilation program in the offline mode is executed as a parallel program one will usually choose the number of processors to be equal to the number of processes used in the model integrations. Then, on can use the same domain decomposition that was used in the model integration. Generally, it is recommended to run the assimilation program as a parallel program, if a large-scale model is used such that the execution of the program on a single processor would take too long or if the program would require too much memory to be run on a single processor. 24 Like many numerical models, PDAF uses the MPI standard for the parallelization. PDAF requires for the compilation that an MPI library is available. In any case, it is necessary to execute the routine `init_parallel_pdaf` as described below. 25 25 26 In the offline model not all parallel feature of PDAF are used. As PDAF is not directly attached to the model code, it should be possible to simply use the routine `init_parallel_pdaf` in the form provided with the PDAF package. For completeness, we describe here the communicators required for PDAF as well as the initialization routine.26 For completeness, we describe here the communicators required for PDAF as well as the template initialization routine. 27 27 28 If the example implementation offline_1D/ is used as the base for the implementation, it should be possible to simply keep this part of the program unchanged and directly proceed to the [OfflineInitPdaf initialization of PDAF] for the offline mode. 28 29 29 30 30 == Three communicators ==