CPI - Ausführugszeit - Pipeline

  • Hallo liebes Community

    Ich hoffe, die Frage ist hier richtig, habe den passenden Platz dafür nicht gefunden.

    Ein Programm auf einem Prozessor mit Taktzykluszeit von 1.25 GHz und einem CPI-Wert von 1.45 (ohne Pipeline) benötigt zur Ausführung 150‘000 Befehle.

    Wie kann ich hier die Ausführungszeit des Programms ausrechnen? Gibt es hier eine Formel? Ist die Berechnnung genau oder nur eine Näherung?

    Und wie würde das mit einem Prozessor mit Pipeline aussehen?


    Vielen Dank

  • Anzahl Taktzyklen: n = 150000 * 1.45 = 217500 Taktzyklen
    Dauer: t = n / 1250000000 = 174 µs
    CPI ist nur ein Durchschnittswert, also ist das Ganze nur eine Abschätzung.
    Eine Pipeline würde die CPI verändern (im Idealfall auf 1) bzw. man unterteilt einzelne Instruktionen in mehr Phasen und erhöht die Taktzykluszeit. Es gilt dabei aber: Je mehr Phasen, desto mehr Stalls (Pipelinehemmnisse) und damit würde eine Pipeline-Länge von 10 keinen Speedup von 10 erreichen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!