Views

Kompilatory Fortran

From Centrum Komputerów Dużej Mocy, ICM Uniwersytet Warszawski

(Redirected from Fortran)
Jump to: navigation, search
Poradnik
Konto użytkownika  • Poczta elektroniczna  • Korzystanie z SSH  • Systemy kolejkowe: PBS (Klaster halo2), LoadLeveler (BlueGene/P notos)
Programowanie
Kompilatory: C/C++, Fortran  • Programowanie równoległe: OpenMP, MPI, UPC, CAF, SHMEM, pthreads  • Biblioteki numeryczne: BLAS, LAPACK, FFTW
Optymalizacja
Uruchamianie i optymalizacja kodów na architekturze Blue Gene/P  • Uruchamianie i optymalizacja kodów na halo2
Krok po kroku
Logowanie do ICM (Windows)  • Logowanie do ICM (UNIX)  • MPI (Klaster halo2)  • MPI (BlueGene/P notos)
Wszystkie "Krok po kroku"
Dokumentacja

Na każdej maszynie obliczeniowej dostępny jest kompilator języka Fortran (77 i 90).

tornado

Na tornado zainstalowany jest standardowy kompilator języka Fortran firmy Cray. Polecenie kompilacji to: ftn.

Najważniejsze opcje:

  • -O ssp, -O msp - wybór docelowego typu procesorów (SSP lub MSP). Domyślnie kompilowany na MSP.
  • -On - n-ty poziom optymalizacji (n = 0, 1, 2, 3).
  • -g - dodanie informacji dla debuggera (wyłącza niektóre optymalizacje).
  • -r a - generowanie listingu (pliku .lst) z informacjami o przeprowadzonych optymalizacjach i zrównolegleniach.

Dozwolone rozszerzenia kompilowanego pliku to: .f .F .f90 .F90 .ftn .FTN. Uwaga: rozszerzenie wpływa na zachowanie kompilatora:

  • rozszerzenia z dużym "F" wywołują preprocesor,
  • rozszerzenia .f .F zakładają, że plik źródłowy jest w postaci fixed form (kod od siódmej kolumny, styl Fortranu 77)
  • rozszerzenia .f90 .F90 .ftn .FTN zakładają, że plik źródłowy jest w postaci free form (kolumny nie mają znaczenia, styl Fortranu 90)

halo

Na halo dostępne są komercyjne kompilatory firmy Portland Group. Z uwagi na architekturę procesorów AMD Opteron, kompilatory generują kod w wersjach 32- lub 64-bitowych. Aby użyć kompilatorów firmy Portland Group, należy najpierw wydać polecenie:

use_pgi

Polecenia kompilacji dla Fortran 77 i Fortran 90 to, odpowiednio: pgf77, pgf90.

Tryb 32- lub 64-bitowy wybiera się przy pomocy opcji kompilacji:

  • -tp k8-32 to tryb 32-bitowy
  • -tp k8-64 to tryb 64-bitowy

Domyślnie generowany jest kod 64-bitowy.