Institut für Computersprachen
Programmiersprachen und Übersetzer

Detailinformation

( Fenster schließen )


Diplomarbeit
Titel Fortran Program Specialization
Autor Zöchling, Robert
Erscheinungsjahr 1994
Inventardatum 28.11.1994
Abstract Wir beschreiben einen automatischen Programmspezialisierer für eine Untermenge von FORTRAN 77. Der Programmspezialisierer für Fortran beruht auf der off-line Methode der partiellen Auswertung, indem eine monovariante Bindungszeitanalyse vor einer polyvarianten Spezialisierungsphase verwendet wird. Ein Programmspezialisierer ist ein Werkzeug für Programmformungen, das Quellprogramm bezüglich bekannter Eingabedaten spezialisiert. Das Resultat sind neue (Residual.-)Programme, die spezialisiert und, für gewöhnlich, schnellere Versionen als die ursprünglichen Programme sind. Trotz der erfolgreichen Anwendung der Spezialisierung von Programmen auf deklarative Sprachen, wie zum Beispiel Scheme oder Prolog, sind nur wenige Versuche unternommen worden, partielle Auswertung von imperativen Sprachen zu untersuchen. In dieser Diplomarbeit betrachten wir Probleme, wie zum Beispiel die Spezialisierung von Funktionen und Subroutinen in FORTRAN 77, den Bereich von globalen und lokalen Variablen, die Behandlung von Referenzparametern, die statischen Seiteneffekte unter dynamischer Kontrolle und die effiziente Darstellung von Programmen. Das System des Spezialisierers für Fortran wird vorgestellt und experimentelle Resultate für numerische und nicht-numerische Anwendungen werden gezeigt. Alle Quell- und Residualprogramme sind in einer Untermenge von FORTRAN 77 geschrieben, mithilfe des Programmspezialisierers für Fortran spezialisiert und mithilfe eines kommerziellen FORTRAN 77 Compilers in ausführbaren Maschinencode übersetzt worden. Die Resultate zeigen, daß die gegenwärtige Technik der Spezialisierung von Programmen mächtig genug ist, um die Effizienz einer großen Klasse von numerischen und nicht-numerischen Programmen zu verbessern. Wie auch immer, die Verwendung der Programmspezialisierung als Entwicklungswerkzeug in der wirklichen Welt bleibt noch eine herausfordernde Aufgabe. Soviel wir wissen, ist dies der erste Programmspezialisierer, der vollständig für Fortran implementiert ist. Der Spezialisierer für Fortran ist in ANSI FORTRAN 77 geschrieben und ist auf verschiedene Rechner portiert worden. Teile dieser Arbeit sind veröffentlicht wor den (26,7).
Status Verfügbar

( Fenster schließen )