Changes between Version 4 and Version 5 of OfflineAdaptParallelization


Ignore:
Timestamp:
May 18, 2025, 3:39:33 PM (5 hours ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OfflineAdaptParallelization

    v4 v5  
    66<h4>Offline Mode: Implementation Guide</h4>
    77<ol><li><a href="OfflineImplementationGuide">Main page</a></li>
    8 <li>Adaptation of the parallelization</li>
     8<li>Initializing the parallelization</li>
    99<li><a href="OfflineInitPdaf">Initialization of PDAF</a></li>
    1010<li><a href="OfflineImplementationofAnalysisStep">Implementation of the analysis step</a></li>
     
    1818== Overview ==
    1919
    20 Like many numerical models, PDAF uses the MPI standard for the parallelization.
     20The PDAF release provides template code for the offline mode in `templates/offline`. We refer to this code to use it as a basis.
    2121
    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.
     22If 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.
    2323
    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.
     24Like 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.
    2525
    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.
     26For completeness, we describe here the communicators required for PDAF as well as the template initialization routine.
    2727
    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
    2929
    3030== Three communicators ==