Skip to Main content Skip to Navigation
Journal articles

Seeding and adjoining zero-halo partitioned parallel scientific codes

Abstract : Algorithmic differentiation tools can automate the adjoint transformation of parallel messagepassing codes [23] using the AMPI library. Nevertheless, a non-trivial and manual step afterthe differentiation is the initialisation of the seed and retrieval of the output values from thedifferentiated code.MPK:Ambiguities in seeding occurs in programs where the user isunable to expose the complete program flow to the AD tool (a single entry and single exitpoint).:KPMIn this work, we present the problems and ambiguities associated with seedinitialisation and output retrieval for adjoint transformation of halo and zero-halo partitionedMPI programs.JDM:point out relevance: - no pb with single master paradigms, whenusing brute-force AD - problem when using more advanced SPMD/all-worker models, and/orpartial hand-assembly.:MDJShared-node reduction is an important parallel primitive inthe zero-halo context. We introduce a general framework to eliminate ambiguities in seedingand retrieval for shared-node reduction over +, and∗operators using a conceptual master-worker model. Corollaries from the model show the need for new MPI calls for retrievaland eliminate MPI calls for seed initialisation. Different possible implementations for seed-ing manually assembled adjoints were inferred from the model, namely, (i) partial and (ii)unique seeding. We successfully demonstrate the seeding of the manually assembled adjointfixed-point iteration in a 3dzero-halo partitioned unstructured compressible flow solver. Thedifferent implementations, their merits and demerits are highlighted. Tapenade AD tool was used throughout this work.
Complete list of metadatas
Contributor : Laurent Hascoet <>
Submitted on : Monday, November 18, 2019 - 12:52:36 PM
Last modification on : Friday, January 3, 2020 - 1:23:55 PM

Links full text




Pavanakumar Mohanamuraly, Laurent Hascoët, Jens-Dominik Müller. Seeding and adjoining zero-halo partitioned parallel scientific codes. Optimization Methods and Software, Taylor & Francis, 2019, pp.1-20. ⟨10.1080/10556788.2019.1591404⟩. ⟨hal-02368107⟩



Record views