next up previous contents
Next: AutoCAD an der TUHH Up: Software Previous: Studentenversion MapleV4 für Linux

Compiler auf der Hydra

Mit dem Systemwechsel zu SPP 5.2 vollzog sich eine größere Änderung : Die bisher aus historischen Gründen zweimal vorhandenen Compiler (von Convex und von HP) wurden in jeweils ein Produkt integriert, das nach außen den HP-Versionen entspricht. Sie befinden sich unter

/opt/fortran/bin/fort77 FORTRAN 77
/opt/fortran90/bin/f90 Fortran 90
/opt/ansic/bin/cc ANSI-C
/opt/CC/bin/CC C++

Damit wurden auch alle Optimierungs-Optionen geändert, um sie dem bisherigen HP-Optionsformat anzupassen. Die Standard-Optimierungsstufe für nicht parallele Programme ist jetzt +O3; parallele Programme erhält man durch zusätzliche Angabe von +Oparallel. Den guten alten Optimierungsreport gibt es jetzt nur noch auf Anfrage mit +Oreport.

Eine Übersicht über alle Optionen erhält man natürlich mit dem Befehl man. Ausserdem ist die gedruckte Dokumentation auch online mit dem Reader pinpoint verfügbar. Hier findet man auch den ``Exemplar Programming Guide'', der ausführlich die Parallelisierungsmöglichkeiten beschreibt.

Eine Option, auf die ich noch besonders hinweisen möchte, ist +FP. Immer wieder kommen Anwender zur Beratung mit einem Programm, das unerklärlich langsam läuft. Manchmal besteht das Problem darin, daß im Programm irgendwann Overflows, Divisionen durch 0 etc. auftreten, die nicht etwa zu Abstürzen führen, sondern zu besonderen Werten wie NaN oder inf, mit denen fröhlich, aber langsam weitergerechnet wird. Meistens ist dann ein Programmabbruch und eine entsprechende Fehlermeldung vorzuziehen. Dies erzwingt man durch die Compiler-Option +FPVZO. Zur Klasse der ``Floating exceptions'' gehört aber auch der Underflow, der immer dann auftritt, wenn eine Zahl (betragsmäßig) kleiner als die kleinste darstellbare Zahl geworden ist. In diesem häufigen Fall möchte man aber keinen Abbruch, sondern einfach eine stillschweigende und schnelle Ersetzung der kleinen Zahl durch 0. Dies erzwingt man mit +FPD. Ohne diese Option wird die Zahl zwar auch durch 0 ersetzt, aber erst, nachdem eine Fehlerbehandlungsroutine durchlaufen wurde, was in Anwendungen schon mal einen Faktor 1000 an CPU-Zeit gekostet hat!

Dr. Peter Junglas, Tel.: 3193


next up previous contents
Next: AutoCAD an der TUHH Up: Software Previous: Studentenversion MapleV4 für Linux

Jan Koehnlein
Wed Oct 22 14:43:50 MESZ 1997