Fortran

Veel technische software is geschreven in Fortran. De grootste en beste pakketten hebben de tand des tijds doorstaan. De software engineers bij VORtech hebben de Fortran-kennis om die pakketten te onderhouden en door te ontwikkelen. Wat maakt hun kennis zo bijzonder?

Wat is Fortran?

Fortran is een programmeertaal waarin van oudsher veel technische software is geschreven. Behalve dat het een van de eerste hogere programmeertalen was, was het ook de eerste taal die door het ANSI werd gestandaardiseerd. Dit maakte deze taal bij uitstek geschikt voor forse investeringen in de ontwikkeling van grootschalige rekensoftware, waarbij de maximale performance uit de hardware gehaald kon worden. Hiertoe wordt ook gebruik gemaakt van technieken als High Performance Computing (HPC) en sterk geoptimaliseerde numerieke bibliotheken, zoals BLAS en LAPACK.

De grootste en beste in Fortran geschreven software heeft de tand des tijds doorstaan en is nog steeds in gebruik. In veel gevallen is deze software zeer zorgvuldig geschreven en goed onderhouden. Het haalt vaak nog steeds het maximaal mogelijke uit moderne hardware. De functionaliteit werd, vaak door de oorspronkelijke programmeurs, uitgebreid en aangepast aan de vooruitgang in de techniek. Er is dus nooit een aanleiding geweest om deze enorme pakketten in een andere programmeertaal te herschrijven.

Is Fortran nog in ontwikkeling?

De programmeertaal zelf is nog steeds in ontwikkeling: de Fortran-standaard wordt nog steeds bijgewerkt. De ponskaart lay-out van FORTRAN 77 (met hoofdletters) is losgelaten, de namen van variabelen en functies mogen langer zijn dan 6 tekens en “modernere” mogelijkheden zoals dynamische geheugenallocatie en objectoriëntatie zijn toegevoegd. De koppeling met C is een gestandaardiseerd onderdeel van de taal. MPI en OpenMP bieden veel HPC-mogelijkheden. Ook compilerfabrikanten leveren nog steeds nieuwe, voor moderne processor-architectuur geoptimaliseerde versies van hun compilers, zoals Intel, PGI en natuurlijk GNU Fortran. NVIDIA werkt, samen met de US Department of Energy’s National Nuclear Security Administration, aan een Fortran front-end voor LLVM: Flang.

Nieuwe software wordt tegenwoordig echter vaak in andere programmeertalen geschreven. De hoofdreden is uiteraard dat de meeste software tegenwoordig meer op gebruikerservaring dan op rekenkracht is gericht, zoals bij interactieve websites en apps voor mobiele telefoons en tablets. Daarnaast zijn ook andere performance-georiënteerde talen zoals C en C++ tegenwoordig gestandaardiseerd en daarmee acceptabel geworden voor grootschalige investeringen in software. Het aantal Fortran-ontwikkelaars is hierdoor ondertussen fors afgenomen. Dit leidt tot problemen zodra bestaande software-ontwikkelaars met pensioen gaan, een andere functie krijgen of er tijdelijk extra capaciteit nodig is voor een software-uitbreiding.

Vrijwel alle software engineers bij VORtech zijn echter ervaren Fortran-ontwikkelaars. Hoe kan dat?

VORtech is gespecialiseerd in technisch-wetenschappelijke programmatuur. Een van de eerste projecten van VORtech is de parallellisatie van het waterbeheermodel SIMONA, meer dan 20 jaar geleden. Dit model is in Fortran geïmplementeerd. VORtech werkt nog steeds aan het beheer en ouderhoud van SIMONA. Ook op andere gebieden, zoals geluidsmodellering, klimaatmodellering, verkeerskunde en geofysica, werkt VORtech aan Fortran-programmatuur. Dit betreft vaak grote en complexe reken- en simulatiesoftware, al dan niet gekoppeld aan bijvoorbeeld C++, C, Python, Perl, Matlab, Java of C#. Alle scientific software engineers bij VORtech, ongeacht leeftijd, zijn academisch opgeleid op technische gebieden zoals wiskunde, natuurkunde of mechanica. Zij hebben, in de loop van hun carrière, vrijwel allen aan een of meerdere pakketten gewerkt die geheel of gedeeltelijk in Fortran zijn geschreven.

Welke Fortran-diensten levert VORtech?

Naast hulp bij het ontwikkelen, functioneel uitbreiden, optimaliseren van bestaande Fortran-programmatuur, kunnen we desgewenst ook de zorg voor het beheer en onderhoud van deze programmatuur overnemen. Daarnaast geven we advies en cursussen over wetenschappelijke software en gerelateerde wiskundige aspecten.

Links

Kan VORtech u helpen?
Als u wilt weten wat VORtech voor u kan betekenen op het gebied van Fortran programmatuur, neem contact op voor een vrijblijvende kennismaking.
Neem contact op