Seeding and adjoining zero-halo partitioned parallel scientific codes

Autor: Jens-Dominik Müller, Laurent Hascoët, Pavanakumar Mohanamuraly
Přispěvatelé: Queen Mary University of London (QMUL), Transformations et outils informatiques pour le calcul scientifique (Ecuador), Inria Sophia Antipolis - Méditerranée (CRISAM), Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), European Project: 642959,H2020,H2020-MSCA-ITN-2014,IODA(2015)
Rok vydání: 2019
Předmět:
Zdroj: Optimization Methods and Software
Optimization Methods and Software, 2019, pp.1-20. ⟨10.1080/10556788.2019.1591404⟩
ISSN: 1029-4937
1055-6788
DOI: 10.1080/10556788.2019.1591404
Popis: International audience; 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.
Databáze: OpenAIRE