Guten Abend, ich habe de folgende Aufgabe und komme damit einfach nicht
weiter.
Meine Idee wäre es die Leistung beider Implementierungen zu bestimmen
(siehe unter dem Bild) und diese dann miteinander zu vergleichen.
Also C2/C1 = 6/5, damit hätte ich den Wert wie viel schneller C2 als C1
ist.
Nun würde ich den gesuchten Takt (x) bestimmen indem ich folgende
Gleichung aufstelle:
xGHZ/2.4 = 2 <=> x = 4,8 GHZ.
Könnte dies so passen?
Ich komme zum selben Ergebnis.
Ein durchschnittlicher C1 Befehl braucht 2,4 Takte.
(1*0,3+2*0,2+3*0,1+4*0,2+3*0,2)
Ein durchschnittlicher C2 Befehl braucht 3 Takte.
(3*0,3+2*0,2+3*0,1+3*0,2+4*0,2)
Damit C1 die selbe Anzahl an Befehlen abarbeitet braucht er:
6 Ghz * 2,4 / 3 = 4,8 Ghz
Gustav schrieb:> Die Dimension stimmt nicht!
Wo? Taktzyklen/Sekunde durch Taktzyklen/Instruktion ergibt
Instruktionen/Sekunde. Sieht für mich passend aus.
Rolf M. schrieb:> Gustav schrieb:>> Die Dimension stimmt nicht!>> Wo? Taktzyklen/Sekunde durch Taktzyklen/Instruktion ergibt> Instruktionen/Sekunde. Sieht für mich passend aus.
Das passt. Allerdings, wenn es sich um eine akademische Aufgabe handelt,
kann man bemängeln das alles etwas schlampig ist. AnzahlderBefehle
stimmt nicht, da gehört eine Summe aus den entsprechend gewichteten
Anzahlen hin, so wie es eine Zeile später gerechnet wurde.
Also mehr in der Art:
Marten Morten schrieb:> AnzahlderBefehle> stimmt nicht, da gehört eine Summe aus den entsprechend gewichteten> Anzahlen hin, so wie es eine Zeile später gerechnet wurde.> Also mehr in der Art:LCν=fclk∑Eμ=ARμCνμ> L_{C_\nu} = \frac{f_{clk} } {\sum_{\mu = \mathrm{A}}^{\mathrm{E}} {> R_{\mu} C_{\nu_\mu} }}> Sieht direkt viel bedeutender aus ;)
Gibt es so eine Art Formelsammlung davon?
Sitze gerade an ähnlichen Problemen und weiß nie was zum Schluss für
Einheiten rauskommen sollen. Wir haben es auch mit der Anzahl der
Befehle gelernt, nur was hat den dann die Leistung für eine Einheit?
Formelsammlung?
Die Caches und Pipelines der modernen Prozessoren sind so komplex
geworden - da kann man eh nichts mehr berechnen. Und die Geschwindigkeit
eines 8Bit Mikrocontroller interessiert nur mehr in der Demoscene.
Ist halt eine akademische Übungsaufgabe. Kommt darauf an, dass du deinen
Lösungsweg sauber begründest. So übersichtlich formulierst, dass die
Einheiten nicht durcheinander kommen.
Rechendienst, Nachtschicht schrieb:> Formelsammlung?>> Die Caches und Pipelines der modernen Prozessoren sind so komplex> geworden - da kann man eh nichts mehr berechnen. Und die Geschwindigkeit> eines 8Bit Mikrocontroller interessiert nur mehr in der Demoscene.>> Ist halt eine akademische Übungsaufgabe. Kommt darauf an, dass du deinen> Lösungsweg sauber begründest. So übersichtlich formulierst, dass die> Einheiten nicht durcheinander kommen.
Naja es geht hier ja nicht um Quantencomputer:) Sondern um Steinalte
Hartware.
Ich weiß ja, dass die meisten hier nicht mhr in der Uni und erst recht
nicht im ersten Semester sind, aber man ernt hier nun mal die Grundlagen
und dazu gehört anscheinend die Rechenleistung. Wir haben im Tutorium
Formeln bekommen, und berechnen es wie der TE dort open. Leider bietet
das KIT hier diesmal keine gute Veranstaltung, denn die Formeln scheinen
ja falsch zu sein.
Hier mal ein trauriges Beispiel:
Die Ausführungszeit setzt sich zusammen aus:
Ausführungszeit = #Befehle (Anzahl der Befehle) * CPI*t_cycle
Nun wissen wir, dass die Ausführungszeit, sowie CPI und t_cycle die
Einheit s hat, aber s*s macht s^2 != s
Ich hätte jetzt ohne weitere Information nur aus dem gegebenen Kontext
geraten, dass CPI für cycles per instruction steht. Hat also keinesfalls
die Einheit s.
Aber wenn ihr es besser wisst, woher?
MfG, Arno
>aber man lernt hier nun mal die Grundlagen>die Einheit s hat, aber s*s macht s^2 != s
Ja, die Grundlage überhaupt: Den eigenen Verstand benutzen! Nicht
einfach irgendeine prähistorische Formelsammlung auswendig lernen.
Stattdessen lernen, wie du selbst herausfinden kannst, ob die Formeln
sinnvoll sind.
Helmut S. schrieb:> CPI ist doch AnzahlZyklen/AnzahlInstruktionenjeBefehl>> Da ist nirgends die Einheit s drin.> CPI hat im Prinzip gar keine Einheit, also z. B. CPI=2,5.
Falsch.
CPI = (SUM (Instruktion_i*Zyklus_i))/ Anzahl aller Instruktionen
Marten Morten schrieb:> Rolf M. schrieb:>> Gustav schrieb:>>> Die Dimension stimmt nicht!>>>> Wo? Taktzyklen/Sekunde durch Taktzyklen/Instruktion ergibt>> Instruktionen/Sekunde. Sieht für mich passend aus.>> Das passt. Allerdings, wenn es sich um eine akademische Aufgabe handelt,> kann man bemängeln das alles etwas schlampig ist. AnzahlderBefehle> stimmt nicht, da gehört eine Summe aus den entsprechend gewichteten> Anzahlen hin, so wie es eine Zeile später gerechnet wurde.> Also mehr in der Art:LCν=fclk∑Eμ=ARμCνμ> L_{C_\nu} = \frac{f_{clk} } {\sum_{\mu = \mathrm{A}}^{\mathrm{E}} {> R_{\mu} C_{\nu_\mu} }}> Sieht direkt viel bedeutender aus ;)
Und wie lautet die Einheit?
Hz?