next up previous contents
Next: Interpretieren oder Übersetzen? Up: Analyse der Kosten-Nutzen-Rechnung eines Previous: Analyse der Kosten-Nutzen-Rechnung eines   Inhalt

Das Modell

Das folgende Modell betrachtet Laufzeit als maßgebliche Größe für Optimierungsentscheidungen. Es lehnt sich an das in [Arnold et al., 2000b] dargestellte Modell an, und ergänzt einige zusätzliche Betrachtungen.

Es seien zwei vereinfachende Annahmen gemacht: erstens ist die Einheit der Übersetzung eine Methode m ohne Betrachtung von inlining, zweitens wird sequentielle Verarbeitung angenommen, d.h. die Möglichkeit paralleler Übersetzung wird nicht in Betracht gezogen. Wegen dieser und folgender Vereinfachungen eignet sich das Modell nur für qualitative Aussagen.

Es werden drei Komponenten betrachtet:

Die Übersetzung der Methode ist nur lohnenswert, wenn Übersetzungszeit plus erwartete Restlaufzeit der optimierten Methode kleiner sind als der Interpretationsaufwand:


tcomp + topt < tint (3.1)

Die drei Komponenten lassen sich weiter aufschlüsseln:

Setzt man obige Gleichungen ineinander ein, so ergibt sich, daß eine Übersetzung lohnenswert ist, wenn gilt:

\begin{displaymath}
c * \vert m\vert + \frac{p * t_{rest}}{s} < p * t_{rest}
\end{displaymath} (3.5)

resp.

\begin{displaymath}
\frac{\vert m\vert}{p * t_{rest}} < \frac{1}{c} * \left( 1 - \frac{1}{s} \right)
\end{displaymath} (3.6)

Die einfließenden Größen noch einmal zusammengefasst:

|m| Methodengröße
p Anteil der interpretierten Methode an der Programmlaufzeit
s Maß für die Effektivität des Compilers
c Maß für die Zeitkomplexität des Compilers
trest Erwartete Restlaufzeit des Programms

Das vorgestellte Modell kann leicht auf ein System mit mehreren, unterschiedlich stark optimierenden Compilern erweitert werden.


next up previous contents
Next: Interpretieren oder Übersetzen? Up: Analyse der Kosten-Nutzen-Rechnung eines Previous: Analyse der Kosten-Nutzen-Rechnung eines   Inhalt

2001-02-28