PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : rechnerarchitektur aufgabe


Gast
2004-11-03, 20:08:51
hoffe bin hier halbwegs richtg?!?
hab folgende aufgabe zu lösen:
Ein hypothetischer 2GHz Prozessor kann pro Takt 2 Befehle ausführen. Jeder Befehl dieses Prozessors benötigt einen Speicherplatz von 4 Byte. Weiter können je Takt zwei Daten-Lade-Befehle und ein Daten-Schreib-Befehl ausgefürt werden. Jedes so bewegte Datum sei auch wieder 4 Byte groß. Wieviele Bytes pro Sekunde müsste der Bus zwischen CPU und Speicher bewegen können um keinen Engpass darzustellen. Betrachten Sie beide Richtungen einzeln und anschließend deren Summe.
momentan blicke ich da garnicht mehr durch ! ich bin soweit dass die cpu pro takt doch: 2* Befehle je 4 Byte = 8 Byte
2*lese-Befehle je 4 Byte= 8Byte
1*schreib-Befehl 4Byte= 4Byte verarbeiten kann. das wären dann doch 20 byte pro sek oder? würde mich echt freuen wenn mir jemand mit der antwort helfen könnte.

GloomY
2004-11-03, 20:18:50
hoffe bin hier halbwegs richtg?!?
hab folgende aufgabe zu lösen:
Ein hypothetischer 2GHz Prozessor kann pro Takt 2 Befehle ausführen. Jeder Befehl dieses Prozessors benötigt einen Speicherplatz von 4 Byte. Weiter können je Takt zwei Daten-Lade-Befehle und ein Daten-Schreib-Befehl ausgefürt werden. Jedes so bewegte Datum sei auch wieder 4 Byte groß. Wieviele Bytes pro Sekunde müsste der Bus zwischen CPU und Speicher bewegen können um keinen Engpass darzustellen. Betrachten Sie beide Richtungen einzeln und anschließend deren Summe.
momentan blicke ich da garnicht mehr durch ! ich bin soweit dass die cpu pro takt doch: 2* Befehle je 4 Byte = 8 Byte
2*lese-Befehle je 4 Byte= 8Byte
1*schreib-Befehl 4Byte= 4Byte verarbeiten kann. das wären dann doch 20 byte pro sek oder? würde mich echt freuen wenn mir jemand mit der antwort helfen könnte.
Es wären 20 Byte / Takt, nicht pro Sekunde. ;) Ansonsten bist du wohl auf dem richtigen Weg :)

btw: Ich finde die Aufgabe etwas praxisfremd, wo doch schon seit langem jeder Prozessor bei einem Speicherzugriff keine einzelnen Datenwörter mehr aus dem Speicher holt sondern immer ganze Cache Lines (Größenordnung 32, 64 oder 128 Bytes).

Gast
2004-11-03, 20:26:46
gut danke aber wie sieht das denn jetzt im bezug auf den richtungen aus. 16 byte beim lese-befehl und 12 beim schreib-befehl da blich ich nicht ganz durch und was hat der 2 ghz prozessor damit zu tun ? ein freund vin mir meinte die lösung ist :cpu schafft pro takt 16*10^9 bytes daten zu verarbeiten
datenbus ist insgesamt 24*10^9

Aqualon
2004-11-03, 20:37:44
Dein Prozessor würde 16*10^9 Byte/s verarbeiten können (8 Byte/Takt * 2GHz) und auf den Durchsatz des Datenbus kommt man, indem man betrachtet, wieviele Daten den Prozessor erreichen müssen, um wirklich die 8 Byte/Takt Verarbeitung erreichen zu können.

Aqua

Gast
2004-11-03, 20:56:09
sorry wenn ich euch schon auf die eier gehe aber was würdet ihr denn jetzt als konkrete antwort auf die fragestellung geben ?

Aqualon
2004-11-03, 21:08:01
Dein Prozessor kann maximal 16GB/s verarbeiten, diese müssen also auch mindestens vom Speicher zum Prozessor fließen können. Zurück gehen dagegen nur 4 Byte pro Takt, weswegen hier 8GB/s ausreichen. Minimal muss der Datenbus also zusammengerechnet 24GB/s (16GB/s RAM -> CPU und 8GB/s CPU -> RAM) übertragen können.

Aqua

Gast
2004-11-03, 22:55:52
thx habt mir sehr geholfen

Mike
2004-11-05, 20:17:57
Die Lösung ist übrigens 40*10^9 Bytes (16 Daten Lesen, 16 Befehle lesen, 8 Daten schreiben)
Soo schwer war die Aufgabe eigentlich nicht, wenn man weiß was die Frequenz/ein Hertz ist und addieren/multiplizieren kann.. :)

@Gloomy, naja, 1. Semester Informatik, wir haben da noch nix von Cachelines etc gehört, hat ja auch grad erst angefangen :)
Und von wegen Praxisfremd, diese Aufgabe ist vom 2. Aufgabenblatt, auf dem ersten mussten wir berechnen, durch wieviel Seiten eines Lexikons sich ein Wurm frisst :D

@Gast, du studierst nicht zufällig in Kassel? :o

Aqualon
2004-11-07, 23:19:27
Die Lösung ist übrigens 40*10^9 Bytes (16 Daten Lesen, 16 Befehle lesen, 8 Daten schreiben)
Soo schwer war die Aufgabe eigentlich nicht, wenn man weiß was die Frequenz/ein Hertz ist und addieren/multiplizieren kann.. :)
Wie kommst du denn da drauf? Der Prozessor kann doch nur 8 Byte lesen und 4 Byte schreiben pro Takt.

Aqua

Mike
2004-11-15, 21:50:04
Zu meinen Werten in den klammern kommt natürlich noch jeweils "*10^9 Bytes".
Der Prozessor kann 8 Byte Befehle + 8 Byte Daten pro takt lesen und 4 Byte Daten pro Takt schreiben...

Aqualon
2004-11-15, 22:50:27
Zu meinen Werten in den klammern kommt natürlich noch jeweils "*10^9 Bytes".
Der Prozessor kann 8 Byte Befehle + 8 Byte Daten pro takt lesen und 4 Byte Daten pro Takt schreiben...
Das macht auch bei mir 40GB/s, wenn ich mal richtig rechnen würde...

Aqua

Mike
2004-11-15, 23:19:46
hm? 2GHz * (8+8+4)Byte = 40GB/s