This event is a part of the "Best Practices for HPC Software Developers" webinar series, produced by the IDEAS Productivity Project. The HPC Best Practices webinars address issues faced by developers of computational science and engineering (CSE) software on high-performance computers (HPC) and occur approximately monthly.
Resource Information | Details |
---|---|
Webinar Title | Automated Fortran–C++ Bindings for Large-Scale Scientific Applications |
Date and Time | 2021-05-12 05:00 pm EDT |
Presenter | Seth Johnson (Oak Ridge National Laboratory) |
Registration, Information, and Archives | https://ideas-productivity.org/resources/series/hpc-best-practices-webinars/#webinar052 |
Webinars are free and open to the public, but advance registration is required through the Event website. Archives (recording, slides, Q&A) will be posted at the same link soon after the event.
Abstract
Although many active scientific codes use modern Fortran, most contemporary scientific software libraries are implemented in C and C++. Providing their numerical, algorithmic, or data management features to Fortran codes requires writing and maintaining substantial amounts of glue code. In the same vein, some projects are actively moving key kernels from Fortran toward C++ to support performance portability models and other rapidly-developing, dynamic programming paradigms. How can a project smoothly connect existing Fortran code to new internal C++ kernels or external C++ libraries? SWIG-Fortran provides a solution with a wide range of flexibility, including support for performant data transfers, MPI support, and direct translation of C++ features to Fortran interfaces.
Presenter Bio
Seth Johnson specializes in high-performance computational radiation transport as a research staff member at Oak Ridge National Laboratory. Although his background is in nuclear engineering, with a B.S. from Texas A&M University and a Ph.D. from the University of Michigan, he finds himself researching software advancements more than performing traditional engineering analyses. Over his career, Seth has developed new methods and tools in hybrid deterministic–Monte Carlo transport, computational geometry, sensitivity/uncertainty methods, automated inter-language code binding, and high-energy physics.