DO CONCURRENT communicates that an operation should be independent of order, but when there is no parallelization method the compiler must pick some order to follow. Marshall Ward ran some tests and suggests outer to inner loops. github.com/marshallward...
Posts by FortranTip
OpenMP directives can be faster than DO CONCURRENT, since compiler writers have put more effort in implementing the former. fortran-lang.discourse.group/t/do-concurr...
www.sovereign.tech/tech/gfortran The Sovereign Tech Fund is funding gfortran €360,000 to improve parallel computing support and make other improvements. It is used in climate modeling, aerospace, weather forecasting, computational chemistry, artificial intelligence, and other fields.
github.com/fortran-lang... Fprettify, written in Python, is probably the most used auto-formatter for modern Fortran code. It imposes strict whitespace formatting and integrates with editors such as Vim.
fortran-lang.discourse.group/t/gnu-fortra... Gfortran 15.1 is released. Fortran 2018 and 2023 locality specifiers to DO CONCURRENT are now supported, there is experimental support for unsigned types, and a -Wexternal-interface-mismatch option has been added, among other things.
There are efforts to translate Fortran to C++ with LLMs, but
Damian Rouson notes that Fortran concepts such as pure functions and SPMD parallelism with a PGAS that both work in distributed memory have no precise counterparts in C++. fortran-lang.discourse.group/t/scientists...
Vincent Lafage discusses the evolution of Fortran and how to evolve legacy Fortran codes in a video at youtube.com/watch?v=iXod..., starting at 8:47.
github.com/Beliavsky/Ge... I wrote Python scripts that prompt LLMs to generate Fortran code and send them compiler error messages until the code compiles. On Groq Cloud, Facebook's llama-3.3-70b-versatile is a good coding model.
Compiler engineer Peter Klausler gives advice on writing portable Fortran and examples of non-portable code. github.com/klausler/for...
If x is an allocatable array,
x = y
causes the compiler to check if x must be resized before y is copied to it. You can write
x(:) = y
to bypass the compiler check and perhaps boost speed, but this should be tested.
fortran-lang.discourse.group/t/optimizing...
Gfortran has a DEPRECATED attribute and ifx has a MESSAGE directive to warn about procedures that should not be called in new code but must be preserved for backwards compatibility.
fortran-lang.discourse.group/t/what-are-t...
Slides and video for the talk "Fortran 2023 for you: Features and tools" by Katherine Rasmussen are at hpc.fau.de/2025/03/03/n...
Federico Perini suggest using stdlib.fortran-lang.org/interface/ge... for this. "An elegant way
@fortran-lang stdlib does this is to use the `inquire(…size=nbytes)` and then read it all at once. This allows both faster I/O and overall operation (lines can then be split in memory)."
github.com/guntherwille... "When reading a file, line by line, and using a character array with fixed length (len attribute) to store it, trailing spaces will be added to fill the character string." To avoid this, in the READ statement use advance="no", set the size, and reallocate.
fortran-lang.discourse.group/t/first-time... Jean-Christophe Loiseau gives a set of numerical algorithms to code to learn a scientific programming language such as Fortran. His book loiseaujc.github.io/Scientific_C... uses NumPy and SciPy.
hpc.fau.de/2025/03/03/n... Katherine Rasmussen will give an online talk "Fortran 2023 for you: Features and tools" on Monday March 10 4:00 p.m. CET. One topic will be the Julienne unit testing framework
github.com/fortuno-repo... Fortuno is a flexible & extensible object-oriented Fortran unit testing framework for serial, MPI-parallel and coarray-parallel projects that minimizes boilerplate code when writing tests while prioritizing modularity and extensibility.
beliavsky.github.io/Fortran-pack... Here are 400 projects that work with the Fortran Package Manager, listed by topic. FPM lets you build a program/library, run the executables/tests, and distribute it as a dependency to other projects.
github.com/Beliavsky/Fo... Many books with Fortran code have been published in the fields of numerical analysis, mathematical optimization, CFD, finite elements, physics, chemistry, and statistics. They are listed by subject at the repo.
github.com/zoush99/f-ikos F-IKOS is a static analyzer for Fortran programs by Sheng Zou et al. that can find run-time errors such as division by zero. It is based on the IKOS analyzer for C and C++. Paper: ceur-ws.org/Vol-3864/qua...
github.com/t-kalinowski... Quickr transpiles numerical R functions with declarations to Fortran, with a 100x typical speed-up.
fortran-lang.org/learn/oop_fe...
Fortran-lang just added an article "Putting Fortran’s object-related features to practical use" by Reinhold Bader, revised by nbehrnd, covering object-based and object-oriented programming techniques and performance and ease of use.