Fortran Compilers
Fortran has over a dozen open source and commercial compilers.
Компиляторы#
Open source compilers
GNU Fortran Compiler
GNU Fortran Compiler (gfortran) – стабильный бесплатный компилятор с открытым исходным кодом, входящий в набор GNU Compiler Collection.
OpenCoarrays – это библиотека и обёртка для компилятора gfortran, которая позволяет использовать функции параллельного программирования стандарта Fortran 2018 совместно с компилятором gfortran.
LLVM Flang
Flang – это новый интерфейс для языка Fortran 2018, который недавно был добавлен в LLVM. Он реализован на современном C++ и использует фортран-ориентированный диалект MLIR для преобразования в LLVM IR. Этот проект находится в стадии активной разработки.
Current Flang
Flang – это компилятор с открытым исходным кодом, основанный на коммерческом компиляторе NVIDIA/PGI.
LFortran
LFortran – это современный интерактивный компилятор Fortran на базе LLVM. Также доступен онлайн на сайте dev.lfortran.org посредством статически обслуживаемого компилятора LFortran на базе WASM для выполнения кода в веб-браузерах.
Commercial compilers
Intel oneAPI
Intel oneAPI – это набор компиляторов, инструментов и библиотек Intel для языков Fortran, C, C++ и Python. Intel oneAPI HPC Toolkit предоставляет два компилятора 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 offloaddo 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
Последний выпуск NAG Fortran Compiler (7.0) имеет широкую поддержку старых и современных возможностей языка Fortran, включая параллельное программирование с использованием комассивов, как и дополнительную поддержку программирования с использованием OpenMP.
Компилятор также обеспечивает поддержку значительной части стандарта Fortran 2018 (атомарные операции, события и задачи, а также другие небольшие возможности), почти всего стандарта Fortran 2008, полное покрытие стандарта Fortran 2003 и все возможности OpenMP 3.1. Для всех платформ доступны вспомогательные инструменты для разработки программного обеспечения: полировщики исходных файлов, генератор зависимостей для модулей и подключаемых файлов, генератор графов вызовов, построитель интерфейсов и унификатор точности.
NVIDIA
Компиляторы NVIDIA HPC SDK для языков C, C++ и Fortran, изначально компиляторы PGI, поддерживают GPU-ускорение приложений HPC моделирования и симуляци с помощью стандартных C++ и Fortran директив OpenACC® и CUDA®. Математические библиотеки с GPU-ускорением вычислений повышают производительность распространённых HPC алгоритмов, а коммуникационные библиотеки позволяют программировать многопроцессорные и масштабируемые системы на основе стандартов.
Компиляторы NVHPC доступны бесплатно. В настоящее время компилятор поддерживает платформы Linux и архитектуры x86_64, ppc64le и aarch64. Поддержка сообщества доступна на сайте HPC compiler forum.
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 for Linux – это инструмент программирования на основе отраслевых стандартов, используемый для разработки больших и сложных приложений на языке программирования Fortran. Он генерирует код, использующий возможности новейшей архитектуры POWER9 и максимально эффективно использующий ваше оборудование. IBM XL Fortran for Linux оптимизирует вашу инфраструктуру на IBM Power Systems™ для поддержки масштабных численных, научных и высокопроизводительных вычислений.
Компиляторы IBM XL community edition доступны бесплатно. Компиляторы поддерживают платформы Linux и AIX для архитектуры ppc64le.
AMD
Системы компиляторов AMD Optimizing C/C++ Compiler (AOCC) – высокопроизводительный инструмент генерации кода промышленного качества. Среда AOCC предоставляет разработчикам различные возможности при создании и оптимизации приложений на языках C, C++ и Fortran для 32- и 64-разрядных платформ Linux®. Система компиляторов AOCC предлагает высокий уровень расширенных оптимизаций, многопоточность и поддержку процессоров, включая глобальную оптимизацию, векторизацию, межпроцедурный анализ, преобразование циклов и генерацию кода. AMD также предоставляет высокооптимизированные библиотеки, которые извлекают максимальную производительность из каждого ядра x86-процессора при его загрузке. Набор компиляторов AOCC упрощает и ускоряет разработку и настройку x86-приложений.
Компиляторы AOCC доступны бесплатно и поддерживают платформы Linux с архитектурой x86_64.
ARM
Linux user-space Fortran compiler. Предназначен для высокопроизводительных вычислений (HPC) и научных кодов, поддерживает популярные стандарты Fortran и OpenMP и настроен на использование на ведущих платформах серверного класса для архитектуры Arm. Построен на открытом исходном коде интерфейса Flang и платформы оптимизации и генерации кода LLVM. Доступен в составе пакета Arm Compiler for Linux.
Oracle / Sun
Oracle C, C++, Fortran компилятор высоко оптимизирован для систем Oracle, как локальных, так и облачных
Передовая технология генерации кода для новейших систем Oracle на базе архитектур SPARC и x86
Поддержка последних отраслевых стандартов, включая C++14, C++11, C11 и OpenMP 4.0, а также широкие возможности совместимости с компиляторами GCC
Автоматический анализ кода во время компиляции и автоматическая защита от переполнения стека во время выполнения приложения
Silverfrost FTN95
Silverfrost FTN95 – это компилятор, полностью соответствующий стандарту Fortran 95, способный быстро создавать исполняемые файлы для Win32 и для Microsoft .NET. FTN95 поставляется с лучшей в мире проверкой времени выполнения и большим набором вспомогательного программного обеспечения. Поддерживаются все стандартные и многие унаследованные от производителей компиляторов языковые функции, так что проекты Fortran могут представлять собой любую комбинацию кода Fortran 77, Fortran 90 и Fortran 95. Добавлены некоторые возможности стандартов Fortran 2003 и 2008. работает под управлением Windows / x86_64. Существует бесплатная персональная версия.
NEC
Компилятор Fortran соответствует стандарту Fortran-2003 (ISO/IEC 1539-1:2004) и поддерживает многие возможности стандарта Fortran-2008 (ISO/IEC 1539-1:2010).
LCC
МЦСТ компилятор C, C++, Fortran имеет полную поддержку стандарта Fortran-95 (ISO/IEC 1539:1997) и частичную поддержку стандартов Fortran-2003 (ISO/IEC 1539:2004), Fortran-2008 (ISO/IEC 1539:2010) и Fortran-2018 (ISO/IEC 1539:2018). Используется для российских процессоров с архитектурой Эльбрус (e2k) и SPARC (MCST-R). Также доступен кросс-компилятор для систем с архитектурой x86_64.
Discontinued
Ниже приведён список компиляторов Fortran, разработка и поставка которых, похоже, прекращена, поэтому мы не приводим их выше:
Absoft
Apogee
Edinburgh Portable Compilers
Hewlett Packard
Lahey
Watcom
PathScale
G95
Open64
Unisys
Note
Пожалуйста, сообщите нам, если есть компилятор, которого нет в списке, или если мы перечислили компилятор в разделе Discontinued, а на самом деле он активно поддерживается.