STREAmS (Supersonic TuRbulEnt Accelerated navier-stokes Solver) is an open-source, high-fidelity solver for the direct numerical simulation (DNS) of compressible turbulent flows, developed at Sapienza University of Rome in collaboration with CINECA. Written in modern Fortran and designed from the start for GPUs, it performs large-scale, massively parallel simulations of canonical wall-bounded flows and of flows in curvilinear geometries, and it scales efficiently on the largest European supercomputers.
Links: Source code (GitHub) · Documentation · Video gallery (YouTube)
Flow cases on Cartesian grids: compressible plane channel flow, zero-pressure-gradient boundary layer, shock-wave/boundary-layer interaction.
Flow cases on curvilinear grids: curved channels, C-mesh external flows around airfoils, boundary layers over curved walls and compression ramps.
Numerics: high-order shock-capturing schemes for the compressible Navier–Stokes equations, energy-preserving discretisation in smooth regions, flexible boundary conditions and inflow turbulence generation.
Post-processing: run-time statistics, in situ visualisation and dedicated post-processing tools.
Back-ends: MPI + CUDA Fortran (NVIDIA GPUs), OpenMP offload (Intel and other GPUs), HIP (AMD GPUs) and OpenMP for CPUs.
Demonstrated scalability on EuroHPC systems (LUMI-G, MareNostrum 5, Leonardo) and on Intel GPU Max nodes; admitted to the JUPITER Research and Early Access Program (2025) on the road to exascale.
Adopted by research groups worldwide; the DNS databases of supersonic and hypersonic boundary layers produced with STREAmS are publicly available and used as reference data by the community.
STREAmS 1.0 (2021) — first public GPU release (CUDA Fortran), canonical Cartesian flows.
STREAmS 2.0 (2023) — new modular architecture and multi-back-end portability.
STREAmS 2.1 (2025) — latest release: additional flow cases and physical models, in situ visualisation and performance improvements.
M. Bernardini, D. Modesti, F. Salvadore, S. Pirozzoli, "STREAmS: A high-fidelity accelerated solver for direct numerical simulation of compressible turbulent flows", Comput. Phys. Commun. 263, 107906 (2021). doi:10.1016/j.cpc.2021.107906
M. Bernardini, D. Modesti, F. Salvadore, S. Sathyanarayana, G. Della Posta, S. Pirozzoli, "STREAmS-2.0: Supersonic turbulent accelerated Navier-Stokes solver version 2.0", Comput. Phys. Commun. 285, 108644 (2023). doi:10.1016/j.cpc.2022.108644
F. Salvadore, G. Soldati, A. Ceci, G. Rossi, A. Memmolo, G. Della Posta, D. Modesti, S. Sathyanarayana, M. Bernardini, S. Pirozzoli, "STREAmS-2.1: Supersonic turbulent accelerated Navier-Stokes solver version 2.1", Comput. Phys. Commun. 314, 109652 (2025). doi:10.1016/j.cpc.2025.109652
Performance and porting: S. Sathyanarayana et al., J. Parallel Distrib. Comput. 196, 104993 (2025), doi:10.1016/j.jpdc.2024.104993; F. Salvadore et al., J. Supercomput. 80, 21094–21127 (2024), doi:10.1007/s11227-024-06254-y.
STREAmS is released under the GNU GPL v3.0. Contributions, bug reports and feature requests are welcome through the GitHub repository.
Development and simulations have been supported by CINECA (ISCRA programme, Leonardo Early Access), PRACE and EuroHPC allocations (LUMI-G, MareNostrum 5, JUPITER), the ENEA PTR programme on GPU thermo-fluid-dynamics software (2022–2024), the European Centres of Excellence EXCELLERAT and CERISSE-X, the ICSC National Centre for HPC (PNRR) and projects funded by ESA, ASI and the Italian Ministry of University and Research.