Fortran Compilers

Fortran has over a dozen open source and commercial compilers.

Kompilatory#

Open source compilers

GNU Fortran Compiler

Kompilator Fortran GNU (gfortran) jest rozwiniętym, darmowym kompilatorem o otwartym kodzie źródłowym, będącym częścią kolekcji kompilatorów GNU.

OpenCoarrays to biblioteka i wrapper kompilatora gfortran, która umożliwia równolegle używać funkcji Fortran 2018 z gfortran.

LLVM Flang

Flang to nowy front-end Fortran 2018, który niedawno został dodany do LLVM. Jest zaimplementowany w nowoczesnym C++ i używa i wykorzystuje zorientowany na Fortran dialekt MLIR do obniżania do LLVM IR. Projekt ten jest w fazie aktywnego rozwoju.

Current Flang

Flang to kompilator o otwartym kodzie źródłowym bazowany na komercyjnym kompilatorze NVIDIA/PGI.

LFortran

LFortran to nowoczesny, interaktywny, bazowany na LLVM kompilator Fortran. Jest on również dostępny online na dev.lfortran.org używając statycznie obsługiwanego kompilatora LFortran do uruchamiania kodu w przeglądarkach internetowych.

Commercial compilers

Intel oneAPI

Intel oneAPI to zestaw kompilatorów, narzędzi i bibliotek firmy Intel dla języków Fortran, C, C++ i Python. Zestaw Intel oneAPI HPC udostępnia dwa kompilatory Fortran:

  • Intel Fortran Compiler (ifx), a new, LLVM-based compiler that comes with full Fortran 2018 support. It also supports the majority of OpenMP 5.0/5.1 including offload to Intel GPUs. ifx can also offload do concurrent to Intel GPUs.

  • Intel Fortran Compiler Classic (ifort), a mature compiler with full Fortran 2018 support, for CPUs only.

The current version of Intel oneAPI is available for free, and support can be purchased. Currently the ifx compiler supports Linux and Windows platforms for x86-64 architectures. ifort supports Linux, Windows, and macOS. Community support is available for the free version at the Intel Developer forum. Optionally, you can purchase Priority Support with additional benefits including access to previous versions of ifort and ifx.

NAG

Najnowsza odsłona (7.0) NAG Fortran Compilerzapewnia szerokie wsparcie w kwestii obsługi starszych i nowoczesnych funkcji Fortran, w tym programowania równoległego przy użyciu tablic co-array, jak również dodatkowego wsparcia programowania dzięki OpenMP.

Kompilator wspiera również Fortran 2018 (operacje atomowe, zdarzenia i zadania oraz inne pomniejsze funkcje), prawie cały Fortran 2008, całkowite wsparcie Fortran 2003 i całe OpenMP 3.1. Wszystkie platformy zawierają narzędzia wspierające tworzenie oprogramowania: narzędzia do wykańczania plików źródłowych, generator zależności dla modułów i plików załączanych, generator wykresów wywołań, narzędzie do tworzenia interfejsów i precyzyjny unifikator.

NVIDIA

NVIDIA HPC SDK kompilator C, C++ oraz Fortran, dawniej kompilatory PGI, obsługują akcelerację GPU aplikacji do modelowania i symulacji HPC za pomocą języków C++ i Fortran, dyrektyw OpenACC® oraz CUDA®. Przyspieszane przed procesor graficzny biblioteki matematyczne maksymalizują wydajność algorytmów HPC, a zoptymalizowane biblioteki komunikacyjne pozwalają na oparte na standardach multi-GPU oraz możliwego do wyskalowania programowania systemów.

Kompilatory NVHPC są dostępne bezpłatnie. Obecnie obsługują platformy Linux oraz architektury x86_64, ppc64le oraz aarch64. Projekt można wspierać na forum kompilatora HPC.

HPE / Cray

The Cray Compiling Environment (CCE) is the cornerstone innovation of Cray’s adaptive computing paradigm. CCE builds on a well-developed and sophisticated Cray technology base that identifies regions of computation that are either sequential scalar, vector parallel or highly multithreaded. It includes optimizing compilers that automatically exploit the scalar, vector and multithreading hardware capabilities of the Cray system. CCE supports Fortran, C and C++.

IBM

IBM® XL Fortran dla systemu Linux to oparte na standardach narzędzie programistyczne służące do tworzenia dużych i złożonych aplikacji w języku programowania Fortran. Generuje ono kod, który wykorzystuje możliwości najnowszej architektury POWER9 i maksymalizuje wykorzystanie sprzętu. IBM XL Fortran dla systemu Linux optymalizuje infrastrukturę IBM Power Systems™, aby obsługiwać szeroko zakrojone obliczenia numeryczne, naukowe oraz o wysokiej wydajności.

Społecznościowa edycja kompilatorów IBM XL dostępne jest bezpłatnie. Kompilatory obsługują systemy Linux, platformy AIX oraz architektury ppc64le.

AMD

Kompilator AMD Optimizing C/C++ Compiler (AOCC) to wydajne narzędzie do produkcji wysokiej jakości kodu. Środowisko AOCC zapewnia różnorodne opcje dla deweloperów podczas budowania i optymalizacji aplikacji w językach C, C++ oraz Fortran przeznaczonych na 32-bitowe i 64-bitowe platformy Linux®. System kompilatorów AOCC oferuje wysoki poziom zaawansowanych optymalizacji, wielowątkowość oraz wsparcie procesora zwierające globalną optymalizację, wektoryzację, analizę międzyprocesową, transformację pętli oraz generowanie kodu. AMD zapewnia również wysoce zoptymalizowane biblioteki, które zapewniają optymalną wydajność z każdego rdzenia procesora x86 w trakcie jego używania. Zestaw kompilatorów AOCC upraszcza I przyspiesza tworzenie i regulację aplikacji x86.

Kompilatory AOCC są dostępne bezpłatnie i obsługują platformy Linux z architekturą x86_64.

ARM

Kompilator Linux user-space Fortran. Stworzony z myślą o HPC i kodach naukowych, obsługuje Fortran oraz standardy OpenMP oraz dostosowany do wiodących platform opartych na architekturze ARM. Front-end zbudowany został na podstawie interfejsu Flang o otwartym kodzie źródłowym, natomiast back-end zawiera optymalizację i generację kodu bazowaną na LLVM. Jest dostępny jako część pakietu Arm Compiler dla systemu Linux.

Oracle / Sun

Kompilator Oracle C, C++, Fortran jest wysoce zoptymalizowany pod kątem systemów Oracle, lokalnie jak i w chmurze

  • Zaawansowana technologia generowania kodu na najnowsze systemy Oracle SPARC oraz x86

  • Obsługa najnowszych standardów branżowych, w tym C++14, C++11, C11 oraz OpenMP 4.0 i rozbudowane funkcje zgodności GCC

  • Automatyczna analiza kodu podczas kompilacji oraz automatyczna ochrona przed przepełnieniem stosu podczas działania aplikacji

Silverfrost FTN95

Silverfrost FTN95 to kompilator zgodny zee standardami Fortran 95, zdolny do tworzenia plików wykonywalnych dla Win32 oraz Microsoft .NET. FTN95 zawiera najlepszą na świecie funkcję sprawdzania czasu działania oraz szeroką gamę oprogramowania pomocniczego. Obsługuje wszystkie języki standardowe, jak i wiele funkcji starszych języków, dzięki temu projekty Fortran mogą być dowolną kombinacją Fortran 77, Fortran 90 oraz Fortran 95. Niektóre funkcje Fortran 2003 oraz 2008 zostały także dodane. Silverfrost Fortran działa na Windows / x86_64. Dostępna jest bezpłatna edycja osobista.

NEC

Kompilator Fortran jest zgodny ze standardami Fortran-2003 (ISO/IEC 1539-1:2004) i obsługuje wiele funkcji Fortan-2008 (ISO/IEC 1539-1:2010).

LCC

Kompilator MCST C, C++, Fortran obsługuje w pełni Fortran-95 (ISO/IEC 1539:1997) oraz częściowo Fortran-2003 (ISO/IEC 1539:2004), Fortran-2008 (ISO/IEC 1539:2010) i Fortran-2018 (ISO/IEC 1539:2018). Używany w do rosyjskich architekturach procesorów Elbrus (e2k) oraz SPARC (MCST-R), dostępny również jako kompilator skrośny dla architektury x86-64.

Discontinued

Poniżej znajduje się lista kompilatorów Fortran, które wydają się być wycofane z użytku, dlatego nie zostały wypisane powyżej:

  • Absoft

  • Apogee

  • Edinburgh Portable Compilers

  • Hewlett Packard

  • Lahey

  • Watcom

  • PathScale

  • G95

  • Open64

  • Unisys

Note

Prosimy o kontakt jeśli istnieje jakiś kompilator, który nie znajduje na liście lub jeśli kompilator znajdujący się w sekcji wycofane jest aktywnie utrzymywany.