Intel und der Compiler-Markt

Fortran gestern, heute und morgen
Kommentare

Fortran („Formular Translation“) ist eine der ältesten „hochsprachlichen“ Programmiersprachen und wird vor allem für sehr rechenintensive Anwendungen genutzt. Im Laufe der Zeit wurde der Sprachstandard immer weiter entwickelt und die Oberflächen wurden den modernen Gewohnheiten angepasst. Die aktuellen Compiler stehen ihren Verwandten aus anderen Sprachwelten in nichts nach. Grund genug für einen Rückblick auf vergangene Zeiten und einen Überblick über die aktuellen Fortran Compiler auf dem deutschen Markt.

„Fortran? Wer programmiert denn heute noch in Fortran?“ Diese Frage hören wir, seit es unser Unternehmen gibt, also seit 1989, fast täglich. Und die Antwort auf diese Frage hat sich seitdem auch nicht wesentlich geändert. Fortran ist weiterhin eine weit genutzte Programmiersprache und wird vor allem dort eingesetzt, wo es wirklich viel zu rechnen gibt. Klassische Anwendungsbereiche gibt es z.B. in der Physik oder den Ingenieurswissenschaften, wo umfangreiche und komplexe mathematische Berechnungen durchgeführt werden. Sehr hilfreich sind hier die sehr guten mathematischen Bibliotheken, die es für diverse Fortran Compiler gibt.

Das nächste Argument ist dann: „Kann man ja alles in C++ umschreiben“. Kann man nicht. Zumindest nicht „mal eben“. Oder haben Sie schon einmal ein von 15 verschiedenen Programmierern, von denen mindestens die Hälfte gar nicht mehr im Unternehmen ist, im Laufe von zehn Jahren (weiter)entwickeltes Programm mit mehreren Tausend Zeilen Sourcecode komplett verstanden oder gar überarbeitet? Und außerdem, warum sollte man so etwas tun? Das Programm ist seit Jahren im täglichen Einsatz und tut, was es soll.

Nicht dass Sie mich jetzt falsch verstehen, ich will nicht behaupten, Fortran sei die Programmiersprache schlechthin. Aus meiner Erfahrung kann ich nur sagen, dass Fortran weiterhin in vielen Bereichen ständig genutzt wird und auch an vielen Hochschulen nach wie vor auf dem Lehrplan steht.

Von alten Zeiten …

Nachdem das dann also geklärt wäre, gestatten Sie mir noch einen kurzen Rückblick auf vergangene (Compiler-)Zeiten. Es gab gerade die ersten 8086-Rechner und damit erstmals die Möglichkeit, auch ohne großes Rechenzentrum arbeiten zu können. Tom Lahey brachte den F77L auf den Markt, den vermutlich ersten kommerziell erfolgreichen Fortran Compiler für PCs.

Es dauerte nicht (allzu) lange bis zum Sprung ins nächste Zeitalter: Die ersten 80386-Rechner kamen auf den Markt und wieder war es Lahey Computer Systems, die nicht lange brauchten, um auch den „gigantischen“ Adressraum dieser Maschinen zu füllen. Mangels eines passenden (und populären) Betriebssystems musste das damals auf PCs allgegenwärtige DOS mittels DOS-Extendern aufgebohrt werden, was auch (meistens) erstaunlich gut funktionierte. Der Lahey F77L-EM/32 wurde zu einem der Standard- Compiler, erlaubte er doch endlich, fast beliebig große Programme auf dem kleinen PC zu schreiben. Folgerichtig wurden immer mehr Programme vom Großrechner auf den PC portiert.

Bald folgten dann auch Fortran 90 und Fortran 95 bis hin zum aktuellen Fortran-2003-Standard. Natürlich laufen heutige Compiler uneingeschränkt unter allen aktuellen Windows-Versionen und unterstützen auch 64-Bit-Prozessoren. Und inzwischen haben eigentlich alle Hersteller den Trend der Zeit erkannt und bieten auch Compiler für Linux an. Waren dies vor gar nicht so langer Zeit noch halbherzige, oft abgespeckte Portierungen, so sind aktuelle Linux-Compiler ihren Windows-Brüdern inzwischen meist ebenbürtig. Kommen wir nun also zu einem Überblick über die zurzeit in Deutschland meistverkauften Fortran Compiler.

… und modernen Compilern

Obwohl Tom Lahey inzwischen „nur noch“ CEO ist, gibt es Lahey Computer Systems natürlich weiterhin. Seit ei- nigen Jahren arbeitet Lahey mit Fujitsu zusammen, Lahey konzentriert sich auf den Fortran Parser und Fujitsu steuert den Codegenerator bei. Die aktuelle Compilersuite für Windows heißt Lahey Fujitsu Fortran 95 (LF95) und ist in verschiedenen Ausführungen erhältlich, die sich teilweise auch in Visual Studio .NET 2003 integrieren. Es gibt auch eine Lowcost-Variante (LF95 Express) ohne eigene IDE.

Die aktuelle Version ist 7.1. Unter Linux heißt der Compiler Lahey/Fujitsu Fortran 95 v6.2 for Linux und ist in zwei verschiedenen Versionen erhältlich. Die Pro-Version bietet z.B. OpenMP-v2.0-Kompatibilität, ein einfaches Grafikpaket (Winteracter Starter Kit) und eine mathematische Bibliothek, die Fujitsu Scientific Subroutine Library 2 [1].

Ein weiterer Hersteller, der gerade seinen 25-jährigen Geburtstag feiert, ist Absoft [2]. Hier gibt es nicht nur Fortran und C++ Compiler für Windows und Linux, sondern auch für OS X auf Macintosh. Somit sind diese Compiler für Entwickler interessant, die alle drei Plattformen unterstützen müssen oder wollen. Leider differenziert Absoft unter Linux zwischen 32- und 64-Bit-Versionen, was den Anschaffungspreis nach oben treibt, wenn man beide Architekturen berücksichtigen muss. Aktuell ist die Version 10.0 (Fortran 95 für 64-Bit Linux).

Relativ neu auf dem Markt ist die Path-Scale EKOPath Compiler Suite. Diese besteht aus C++ und Fortran Compilern für Linux, die auch einzeln erhältlich sind, und zielt hauptsächlich auf 64-Bit-AMDNutzer. Sie läuft auch auf Intel EM64T. In Deutschland konnten sich die Path-Scale Compiler bislang noch nicht richtig durchsetzen, was auch an dem (für unsere Verhältnisse) ungewöhnlichen Vertriebsmodell liegen dürfte: PathScale Compiler kann man nicht kaufen, sondern nur für einen bestimmten Zeitraum (mindestens ein Jahr) mieten. [3]

Aufmacherbild: a detail of computer code in Fortran explained with white chalk on blackboard von Shutterstock / Urheberrecht: marekuliasz

[header = Compaq Visual Fortran geht …]

Compaq Visual Fortran geht …

Auch Microsoft versuchte sich einmal im „Nischenmarkt“ Fortran und brachte die Microsoft Powerstation auf den Markt. Vielleicht war der Markt dem Softwaregiganten aber zu klein, jedenfalls übernahm Digital 1997 Teile des Codes und nutzte seine Erfahrung mit Digital Unix und OpenVMS Compilern. Dies war die Geburtsstunde des bis heute sehr erfolgreichen Digital Visual Fortran. Irgendwann ging Digital dann in Compaq auf, der Compiler wurde weiterentwickelt bis zu seiner heutigen Version Compaq Visual Fortran (CVF) v6.6.

Über lange Jahre hinweg war dies der Standardcompiler für die Windows-Plattform, Linux-Versionen gab es nie. Das Microsoft Developer Studio ist im Lieferumfang enthalten, der Compiler läuft auf allen (32-Bit-)Windows-Versionen ab Windows 98 sehr stabil und erzeugt guten und schnellen Code. Leider wird er seit einiger Zeit in dieser Form nicht mehr weiterentwickelt, dazu später mehr. Im Sommer dieses Jahres hat der aktuelle Eigentümer, Hewlett-Packard, die Einstellung des Vertriebs von CVF zum Jahresende 2005 angekündigt. Support soll es noch bis Mitte nächsten Jahres geben. Wenn Sie also dieses Entwickler Magazin in Händen halten und mit dem Gedanken spielen, noch einen CVF Compiler zu erwerben, sollten Sie sich beeilen [4]. Wenn Sie schon einen haben, lesen Sie einfach weiter.

… aber Intel Fortran ist schon da

Im Jahr 2001 hat Intel das Visual-Fortran-Entwicklerteam von Compaq übernommen und dieselben Leute haben im Dezember 2003 Intel Visual Fortran auf den Markt gebracht. Obwohl Intel schon seit den 80er-Jahren Tools entwickelt, waren Intel Compiler bislang außerhalb der USA fast unbekannt. In den letzten Jahren wurde nun ein weltweites Händlernetz für Compiler, Performance Analyzer, Cluster Tools, und Performance-Bibliotheken aufgebaut. Zusammen mit guten und leistungsfähigen Produkten (wer kennt seine Prozessoren schon besser als der Hersteller selbst) und einer kundenfreundlichen Supportpolitik (ein Jahr Support inkl. aller Upgrades ist bei fast allen Intel-Softwareprodukten schon im Preis enthalten) eroberten sich die Intel Compiler große Marktanteile.

Es gibt Intel Fortran in getrennten Versionen für Windows und Linux. Beide Compiler haben viele Gemeinsamkeiten. Ein Hauptvorteil ist die Erzeugung schnellen Codes für alle gängigen Prozessoren. Per Schalter kann eine Ziel-CPU angegeben werden, der Code wird dann speziell auf die Eigenschaften dieses Prozessortyps hin optimiert, bleibt aber auf allen anderen ebenfalls lauffähig. Selbst Prozessoren des Erzrivalen AMD werden inzwischen offiziell unterstützt.

Neben den „normalen“ 32-Bit-Plattformen gibt es verschiedene 64-Bit Compiler, z.B. für Intel Itanium und Intel EM64T, die alle im Preis enthalten sind. Sie gehören zwar nicht „unmittelbar“ zum Lieferumfang, sind aber über Intels webbasiertes Supportsystem, den Intel Premier Support, kostenlos downloadbar. Nach einer einmaligen, etwas umständlichen Registrierung kann man sich hier ein Jahr lang bedienen, es gibt alle paar Wochen neue Patches und Updates. Selbst ältere Versionen bleiben noch eine Zeit lang verfügbar.

Technische Fragen werden über das gut funktionierende Premier Issue Management meist rasch beantwortet. Nach Ablauf des ersten Jahres kann der Support kostengünstig verlängert werden. Wie inzwischen bei vielen Herstellern üblich, können Sie fast alle Intel-Softwareprodukte vor dem Kauf kostenlos ausprobieren, es ist lediglich eine einmalige Registrierung erforderlich. Beide Intel Fortran Compiler finden Sie auf der Heft-DVD. Die Software selbst ist hierbei identisch zur Kaufversion und wird nur per Lizenzfile nach 30 Tagen inaktiv. Die Linux-Variante heißt Intel Fortran für Linux, aktuell ist die Version 9 erhältlich. Diese unterstützt jetzt auch Multi-Core-Rechner und natürlich den aktuellen Fortran-2003-Standard. Es gibt sogar eine kostenlose Linux-Version, allerdings sind die Lizenzbedingungen hierzu stark verschärft worden, sodass diese in der Praxis nur noch als Testversion oder für den rein privaten Gebrauch zu Hause nutzbar ist.

Unter Windows gibt es zwei Varianten, Intel Visual Fortran Standard und Professional Edition. Einziger Unterschied (neben dem Preis) sind die IMSLBibliotheken in der Version 5. Intel Visual Fortran integriert sich in die Microsoft-Visual-Studio-.NET-Umgebung, die allerdings separat erworben werden muss. Am preiswertesten kauft man sich hierzu Visual C++ .NET. Dies führt in der Praxis dazu, dass man erst einmal einen C++ Compiler installieren muss, um ein Fortran-Programm zu schreiben. Nachdem aber alles eingerichtet ist, erkennt man den Nutzen: Intel Visual Fortran fügt sich nahtlos in die MS-Umgebung ein und Sie können alle Funktionen und auch Compiler nutzen, die hier ebenfalls installiert sind. Mixed- Language-Programmierung z.B. wird so stark vereinfacht.

Wie schon erwähnt arbeiten viele CVF-Entwickler jetzt für Intel, beide Compiler sind somit fast vollständig quellcodekompatibel. In der Folge versucht jetzt Intel mit einem speziellen Upgradeangebot CVF-User zum Umstieg auf Intel Visual Fortran zu bewegen. Diese können noch bis zum 20.12.2005 ab 209 Euro umsteigen und erhalten eine vollwertige, neue Lizenz. Danach werden mindestens 520 Euro fällig.

Die Zukunft

Und wie geht es weiter? Ganz konkret steht jetzt erst einmal der Umstieg von 32- auf 64-Bit vor der Tür, auch Multi- Core-Unterstützung wird immer wichtiger. Intel hat erklärt, dass bei Ende 2006 85 Prozent seiner Server und 85 Prozent seiner Desktops mit Multi-Core-Chips versehen sein werden. Ohne entsprechende Softwareunterstützung, zunächst also erst einmal entsprechende Compiler, bringt eine Multi-Core-Architektur natürlich fast gar nichts.

Und langfristig? Vielleicht wird ja der „zu-Ende-globalisierte“ Weltkonzern einmal irgendwann beschließen, dass Fortran nicht mehr gebraucht wird … Für die nähere Zukunft dürfte sich die eingangs gestellte Frage allerdings nicht wirklich stellen. Im Gegenteil, durch die heutigen Möglichkeiten, Programmteile verschiedenster Herkunft und Sprache sehr einfach miteinander zu verbinden und mit den jeweils geeignetsten Mitteln weiterzuentwickeln, sehe ich die Zukunft von Fortran da, wo auch heute die klassischen Anwendungsbereiche liegen: beim Numbercrunching. Zudem gibt es genügend Hersteller, die von der Entwicklung moderner Compiler leben oder zumindest gutes Geld damit verdienen. Ich jedenfalls verspreche Ihnen spätestens für das Jahr 2010 den nächsten Überblick über den Fortran-Markt.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -