
Code Development
Sourcery Institute and Sourcery Inc. have worked with key organizations to develop code and fund the open-source computational science community.
Beginning in 2013, our developers greatly expanded the modern Fortran features in the most widely used open-source Fortran compiler, the GNU Compiler Collection’s “gfortran”:
Fortran 2003: Parameterized derived types and defined derived type input/output.
Fortran 2008: Coarrays and submodules.
Fortran 2018: Teams, events, collective subroutines, atomic subroutines, failed images.
With support from Sourcery Institute’s OpenCoarrays parallel runtime library, gfortran now provides at least partial support for each of the major feature sets in Fortran 2018.
In 2020, we also started contributing code to the newest open-source Fortran compiler: the LLVM project’s Flang.
From 2017-2020, we expanded the U.S. Nuclear Regulatory Commission’s capability for modeling novel nuclear fuel designs, including complex fuel geometries. Our open-source Morfeus solver provided NRC’s first custom parallel, multidimensional, multiphysics modeling package. Morfeus includes a finite volume solver based on a modernized legacy code. Morfeus also includes a nascent block-structured parallel finite difference solver framework.
Since 2019, we have been working with NASA Langley Research Center. We expanded the gfortran compiler’s ability to parallelize the communication of distributed objects. We also launched a new effort to design and develop an asynchronous task-scheduling framework, leveraging the parallel features of Fortran 2018. The initial aim is for the scheduling framework to support radiation physics calculations for predicting spacecraft occupant radiation exposure. In addition to these efforts,
The packages we develop for our projects and classes are open-source and available at the Sourcery Institute store in a Lubuntu Linux virtual machine (VM) that boots in the open-source VirtualBox virtualization platform.