410
7 Optimierung
absenken. Bei Multiprozessor-Systemen könnten Tasks automatisch zwischen verschiedenen Prozessoren migriert werden. In diesen Fällen wird das Ziel „Temperatur”
zur Laufzeit ausgewertet und dazu verwendet, einen Einfluss zur Laufzeit zu erzeugen. Die Vermeidung von Überhitzung ist das Ziel von Arbeiten von Merkel et al.
[392] und Donald et al. [135].
Wenn Temperatursensoren benutzt werden, um das thermische Verhalten von
Systemen zu beeinflussen, dann entstehen Regelkreise. Grundsätzlich können solche Regelkreise instabil werden und schwingen. Atienza et al. haben verschiedene
Strategien für solche Regelkreise verglichen und sind zu dem Schluss gekommen,
dass eine bestimmte fortschrittliche Regelstrategie die besten Ergebnisse erzielt, im
Vergleich zu Standardverfahren mit größerer Performanz bei niedrigeren Temperaturen [610]. Details einer solchen Strategie gehen über Basistechniken eingebetteter
Systeme hinaus und werden daher hier nicht behandelt.
7.5 Aufgaben
Die folgenden Aufgaben sollten entweder zu Hause oder während einer Anwesenheitsphase nach dem flipped classroom-Konzept [376] bearbeitet werden:
7.1: Das Abrollen von Schleifen ist eine der nützlichen Optimierungen. Nennen Sie
zwei mögliche Vorteile und zwei mögliche Nachteile des Abrollens!
7.2: Nehmen Sie an, dass Ihr Rechner einen Hauptspeicher und einen SPM enthält und dass wir auf Variablen wie in Tabelle 7.2 (links) beschrieben zugreifen.
Die Größen und die pro Zugriff benötigte Energie sind in der Tabelle 7.2 (rechts)
aufgeführt.
Variable Größe [Bytes] Anzahl Zugriffe
a
1024
16
b
2048
1024
c
512
2048
d
256
512
e
128
256
f
1024
512
g
512
64
h
256
512
Speicher
Größe [Bytes] Energie
je Zugriff
Scratchpad
4096 (4k)
1,3 nJ
Hauptspeicher 262.144 (256 k) 31 nJ
Tabelle 7.2 SPM mapping: links: Zugriffe auf Variablen rechts: Speicher-Charakteristiken
Welche der Variablen sollten dem SPM zugeordnet werden, wenn wir eine statische, nicht-überlagernde Zuordnung der Variablen voraussetzen? Benutzen Sie ein
ILP-Modell, um die Variablen auszuwählen! Ihr Ergebnis sollte das ILP-Modell wie
auch die ausgewählten Variablen enthalten. Zur Lösung des ILP-Modells können Sie
beispielsweise das Programm lp_solve nutzen [17].
7 Optimierung
absenken. Bei Multiprozessor-Systemen könnten Tasks automatisch zwischen verschiedenen Prozessoren migriert werden. In diesen Fällen wird das Ziel „Temperatur”
zur Laufzeit ausgewertet und dazu verwendet, einen Einfluss zur Laufzeit zu erzeugen. Die Vermeidung von Überhitzung ist das Ziel von Arbeiten von Merkel et al.
[392] und Donald et al. [135].
Wenn Temperatursensoren benutzt werden, um das thermische Verhalten von
Systemen zu beeinflussen, dann entstehen Regelkreise. Grundsätzlich können solche Regelkreise instabil werden und schwingen. Atienza et al. haben verschiedene
Strategien für solche Regelkreise verglichen und sind zu dem Schluss gekommen,
dass eine bestimmte fortschrittliche Regelstrategie die besten Ergebnisse erzielt, im
Vergleich zu Standardverfahren mit größerer Performanz bei niedrigeren Temperaturen [610]. Details einer solchen Strategie gehen über Basistechniken eingebetteter
Systeme hinaus und werden daher hier nicht behandelt.
7.5 Aufgaben
Die folgenden Aufgaben sollten entweder zu Hause oder während einer Anwesenheitsphase nach dem flipped classroom-Konzept [376] bearbeitet werden:
7.1: Das Abrollen von Schleifen ist eine der nützlichen Optimierungen. Nennen Sie
zwei mögliche Vorteile und zwei mögliche Nachteile des Abrollens!
7.2: Nehmen Sie an, dass Ihr Rechner einen Hauptspeicher und einen SPM enthält und dass wir auf Variablen wie in Tabelle 7.2 (links) beschrieben zugreifen.
Die Größen und die pro Zugriff benötigte Energie sind in der Tabelle 7.2 (rechts)
aufgeführt.
Variable Größe [Bytes] Anzahl Zugriffe
a
1024
16
b
2048
1024
c
512
2048
d
256
512
e
128
256
f
1024
512
g
512
64
h
256
512
Speicher
Größe [Bytes] Energie
je Zugriff
Scratchpad
4096 (4k)
1,3 nJ
Hauptspeicher 262.144 (256 k) 31 nJ
Tabelle 7.2 SPM mapping: links: Zugriffe auf Variablen rechts: Speicher-Charakteristiken
Welche der Variablen sollten dem SPM zugeordnet werden, wenn wir eine statische, nicht-überlagernde Zuordnung der Variablen voraussetzen? Benutzen Sie ein
ILP-Modell, um die Variablen auszuwählen! Ihr Ergebnis sollte das ILP-Modell wie
auch die ausgewählten Variablen enthalten. Zur Lösung des ILP-Modells können Sie
beispielsweise das Programm lp_solve nutzen [17].
