Hybrid parallel discrete adjoints in SU2
<|reference_start|>Hybrid parallel discrete adjoints in SU2: The open-source multiphysics suite SU2 features discrete adjoints by means of operator overloading automatic differentiation (AD). While both primal and discrete adjoint solvers support MPI parallelism, hybrid parallelism using both MPI and OpenMP has only been introduced for the primal solvers so far. In this work, we enable hybrid parallel discrete adjoint solvers. Coupling SU2 with OpDiLib, an add-on for operator overloading AD tools that extends AD to OpenMP parallelism, marks a key step in this endeavour. We identify the affected parts of SU2's advanced AD workflow and discuss the required changes and their tradeoffs. Detailed performance studies compare MPI parallel and hybrid parallel discrete adjoints in terms of memory and runtime and unveil key performance characteristics. We showcase the effectiveness of performance optimizations and highlight perspectives for future improvements. At the same time, this study demonstrates the applicability of OpDiLib in a large code base and its scalability on large test cases, providing valuable insights for future applications both within and beyond SU2.<|reference_end|>
@article{blühdorn2024hybrid,
    title={Hybrid parallel discrete adjoints in SU2},
    author={Johannes Bl"uhdorn, Pedro Gomes, Max Aehle, Nicolas R. Gauger},
    journal={arXiv preprint arXiv:2405.06056},
    year={2024},
    archivePrefix={arXiv},
    eprint={2405.06056},
    primaryClass={cs.MS}
}