Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Co-array Fortran – Wikipedia
Co-array Fortran – Wikipedia
aus Wikipedia, der freien Enzyklopädie
Coarray Fortran
Basisdaten
Paradigmen: prozedural, imperativ, strukturiert, objektorientiert, parallel
Erscheinungsjahr: 1990er
Entwickler: Robert Numrich and John Reid
Aktuelle Version: Fortran 2008 (ISO/IEC 1539-1:2010)  ()
Wichtige Implementierungen: Cray, g95, gfortran, ifort
Beeinflusst von: Fortran

Co-array Fortran (CAF), ehemals F--, ist eine Erweiterung der Programmiersprache Fortran 95/2003 zur parallelen Datenverarbeitung, die von Robert Numrich und John Reid in den 1990er Jahren entwickelt wurde. Der Fortran-Standard unterstützt Coarrays (jetzt ohne Bindestrich) seit Fortran 2008 (ISO/IEC 1539-1:2010), wie es auf dem May-2005-Treffen des ISO Fortran Komitees beschlossen wurde; die Syntax im Fortran 2008 Standard unterscheidet sich leicht vom ursprünglichen CAF-Vorschlag.

Ein Coarray-Fortran-Programm wird so interpretiert, als ob es n-mal repliziert würde und alle Kopien asynchron ausgeführt würden. Jede Kopie hat ihre eigenen Datenobjekte und wird Bild („image“) genannt. Die Feld-Syntax von Fortran wird erweitert um rechteckige Klammern, die den Bildindex enthalten, mit dem man so auf die Daten eines anderen Bildes (Prozesses) zugreifen kann.

Die Co-array-Fortran-Erweiterung gibt es schon seit den 1990ern und sie wird in einigen Fortrancompilern wie zum Beispiel dem von Cray (ab Version 3.1) unterstützt. Seitdem Coarrays Teil von Fortran 2008 sind, nimmt die Anzahl der Implementation zu; der erste Open-Source-Compiler, der Coarrays gemäß dem Fortran-2008-Standard unterstützt, ist G95.

Beispiel

[Bearbeiten | Quelltext bearbeiten]
program Hallo_Welt
  implicit none
  integer :: i ! Lokale Variable
  character(len=20) :: name[*] ! skalares Coarray
  ! Hinweis: "name" ist die lokale Variable wohingegen "name[<index>]"
  ! auf die Variable eines anderen Prozesses (Image) zugreift

  ! Kommuniziere mit dem Nutzer auf Image 1
  if (this_image() == 1) then
    write(*,'(a)',advance='no') 'Geben Sie Ihren Namen ein: '
    read(*,'(a)') name

    ! Verteile die Information an die anderen Prozesse
    do i = 2, num_images()
      name[i] = name
    end do
  end if

  sync all ! Barriere damit die Daten wirklich da sind

  ! Ein-/Ausgabe von allen Prozessen
  write(*,'(3a,i0)') 'Hallo ',trim(name),' von Image ', this_image()
end program Hallo_Welt

Siehe auch

[Bearbeiten | Quelltext bearbeiten]
  • Unified Parallel C
  • Parallele Programmierung
  • Partitioned Global Address Space

Weblinks

[Bearbeiten | Quelltext bearbeiten]
  • ISO Fortran Committee
  • Coarrays in the next Fortran Standard (PDF)
  • Rationale for Co-Arrays in Fortran 2008 (PDF)
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=Co-array_Fortran&oldid=244040395“
Kategorie:
  • Programmiersprache

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id