TU Darmstadt / ULB / TUbiblio

Automatic Source Transformation and Performance Evaluation for Optimized Utilization of the Matlab Runtime System

Hück, Alexander :
Automatic Source Transformation and Performance Evaluation for Optimized Utilization of the Matlab Runtime System.
TU Darmstadt
[Masterarbeit], (2013)

Kurzbeschreibung (Abstract)

The ADiMat software is a tool that offers Automatic Differentiation of any Matlab function using a hybrid approach. Depending on the configuration, the resulting derivative function is executed using a derivative container class. Earlier performance tests showed a weakness that was attributed to the object oriented class system of Matlab. In a first step to validate this assumption, the Matlab runtime environment is tested regarding function and method call overheads as well as property access overhead with Matlabs objects. Furthermore, using a simple test function, a specific derivative class is compared to a set of manually created Matlab functions offering the same functionality as the class. It was shown that the resulting speedup is substantial. An automatic method, transforming the XML based abstract syntax tree created with the existing ADiMat toolchain, was developed. The process completely removes the derivative object usage from any derivative function created with ADiMat. It is implemented as a set of XSLT stylesheets. The removal of object orientation works by resolving the class operators and methods statically. The necessary type inference process is based on the identification of the prefix of all derivative variables introduced by the differentiation process. Additionally, the respective classes are semi automatically transformed to a set of functions based on heuristics. A final performance assessment utilizing a PDE function is done comparing the benefits of the implemented transformation. It was shown that the improvement depend on the way the classes store the directional derivatives.

Typ des Eintrags: Masterarbeit
Erschienen: 2013
Autor(en): Hück, Alexander
Titel: Automatic Source Transformation and Performance Evaluation for Optimized Utilization of the Matlab Runtime System
Sprache: Englisch
Kurzbeschreibung (Abstract):

The ADiMat software is a tool that offers Automatic Differentiation of any Matlab function using a hybrid approach. Depending on the configuration, the resulting derivative function is executed using a derivative container class. Earlier performance tests showed a weakness that was attributed to the object oriented class system of Matlab. In a first step to validate this assumption, the Matlab runtime environment is tested regarding function and method call overheads as well as property access overhead with Matlabs objects. Furthermore, using a simple test function, a specific derivative class is compared to a set of manually created Matlab functions offering the same functionality as the class. It was shown that the resulting speedup is substantial. An automatic method, transforming the XML based abstract syntax tree created with the existing ADiMat toolchain, was developed. The process completely removes the derivative object usage from any derivative function created with ADiMat. It is implemented as a set of XSLT stylesheets. The removal of object orientation works by resolving the class operators and methods statically. The necessary type inference process is based on the identification of the prefix of all derivative variables introduced by the differentiation process. Additionally, the respective classes are semi automatically transformed to a set of functions based on heuristics. A final performance assessment utilizing a PDE function is done comparing the benefits of the implemented transformation. It was shown that the improvement depend on the way the classes store the directional derivatives.

Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Scientific Computing
Studienbereiche > Studienbereich Computational Engineering
Studienbereiche
Hinterlegungsdatum: 10 Feb 2016 10:43
Gutachter / Prüfer: Bischof, Professor Christian ; Willkomm, Dipl.-Inf. Johannes
Datum der Begutachtung bzw. der mündlichen Prüfung / Verteidigung / mdl. Prüfung: 2013
Alternatives oder übersetztes Abstract:
AbstractSprache
Die Software ADiMat ist ein Automatic Differentiation Werkzeug, dass Matlab-Funktionen automatisch mit einem hybriden Ansatz (hybrid approach) ableiten kann. Je nach Konfiguration wird die resultierende Ableitungsfunktion mit einer Klasse von ADiMat ausgeführt, die alle zu berechnenden Richtungsableitungen kapselt. Performanztests haben diesbezüglich Schwächen aufgezeigt, die dem Klassensystem von Matlab zugeschrieben wurden. Um diese Annahme zu validieren, wurde die Laufzeitumgebung von Matlab bezüglich des Overheads von Methodenaufrufen und property-Zugriffen getestet. Ferner wurde mit Hilfe einer simplen Testfunktion die Performanz einer kapselnden Ableitungsklasse von ADiMat mit einer Menge von Funktionen, die die gleiche Funktionalität bietet, verglichen. Es wurde gezeigt, dass der resultierende Speedup substantiell ist. Ein automatischer Prozess zur Umwandlung des von ADiMat erstellten XMLSyntaxbaums wurde entwickelt. Der Prozess entfernt die Benutzung einer Ableitungsklasse in einer mit ADiMat erstellten Ableitungsfunktion vollständig. Die Implementation wurde mit einer Menge von XSLT-Stylesheets umgesetzt. Die Entfernung der Objektorientierung basiert auf einer statischen Auflösung von Klassenoperatoren und Methoden. Die Typinferenz benutzt den Präfix aller vom Ableitungsprozess eingeführten Ableitungsvariablen. Zusätzlich wird die Ableitungsklasse in einem halbautomatischen Prozess mit Hilfe von Heuristiken zu einer Menge von Funktionen transformiert. Eine finale Performanzmessung mit einer PDGL wurde durchgeführt, um die Vorteile des Verfahrens aufzuzeigen. Es wurde gezeigt, dass die Performanzverbesserungen von der Art der Speicherung der Richtungsableitung abhängig ist.Deutsch
Export:

Optionen (nur für Redakteure)

Eintrag anzeigen Eintrag anzeigen