Leistungsbewertung und Profiling

Welche Grundformel für die Ausführungszeit eines Programms auf der CPU ist richtig?

  1. AAusführungszeit = Befehlsanzahl + CPI + Taktfrequenz
  2. BAusführungszeit = Taktfrequenz × Befehlsanzahl
  3. CAusführungszeit = Befehlsanzahl × CPI (mittlere Zyklen je Befehl) × Zeit eines Zyklus
Antwort und Erläuterung anzeigen

Antwort: C. Ausführungszeit = Befehlsanzahl × CPI (mittlere Zyklen je Befehl) × Zeit eines Zyklus

Die Ausführungszeit ergibt sich als Produkt aus der Zahl der ausgeführten Befehle, der mittleren Zyklenzahl je Befehl (CPI) und der Dauer eines Zyklus (Taktperiode = 1 ÷ Frequenz). Die Befehlszahl wird hauptsächlich von Algorithmus, Compiler und ISA bestimmt, die CPI von Mikroarchitektur und Cache-Fehlzugriffen, die Zykluszeit von Schaltungs- und Fertigungstechnik. Für bessere Leistung ist zu überlegen, welcher der drei Faktoren um wie viel verbessert wird.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Leistungsbewertung und Profiling

  1. Ein Programm mit 1 Milliarde Befehlen wird auf einer CPU mit mittlerer CPI von 2 und 2 GHz Taktfrequenz ausgeführt. Wie groß ist die Ausführungszeit?
  2. Durch eine Änderung im CPU-Entwurf stieg die Taktfrequenz auf das 1,5-Fache, doch auch die CPI auf das 1,2-Fache (gleiche Befehlsanzahl). Um das Wievielfache wird die Ausführung schneller?
  3. Durch eine neue Compileroptimierung sank die Zahl der ausgeführten Befehle um 20 %, doch die mittlere CPI stieg um 10 % (gleiche Frequenz). Welche Aussage zur Wirkung dieser Optimierung ist richtig?
  4. Die Befehle eines Programms verteilen sich auf Ganzzahloperationen 50 % (CPI 1), Load und Store 30 % (CPI 2) und Verzweigungen 20 % (CPI 5). Wie groß ist die mittlere CPI?
  5. Was ist beim Vergleich der Leistung von CPUs anhand der „Zahl der pro Sekunde ausführbaren Befehle (Millionen Befehle pro Sekunde)“ zu beachten?