PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Benötigte Takte pro Instruktion auf dem Pentium 4?


AMC
2005-07-09, 00:41:04
Hallo allerseits,

ich habe mir nun eine Menge whitepapers und data sheets von Intel runtergeladen, leider aber nichts brauchbares dabei gefunden, daher frage ich hier mal nach: Ich suche eine gute Übersicht über die Anzahl benötigter Takte für die einzelnen Instruktionen (ADD, SUB, MUL, etc.), für den Pentium 4. Kennt hier jemand eine Quelle, oder hat zufällig ein .pdf mit entsprechenden Daten?

Danke!

AMC

Coda
2005-07-09, 01:17:35
Das kann man bei einer superskalaren CPU nicht mehr angeben.

Es gibt zwar eine Instruction-Latency, aber du müsstest genau wissen welche jetzt gerade parallel ausgeführt werden.

Gerade beim P4 mit dem Replay-Mechanismus ist das ganze für einen Menschen fast unmöglich nachzuvollziehen was genau passieren wird mit einer Befehlssequenz.

AMC
2005-07-09, 01:23:58
Wus?!? :| Es ist nicht möglich anzugeben, wieviele Takte ein ADD Reg,Reg oder ADD Reg,Mem braucht? Das kann ich jetzt nicht ganz glauben.....! Die Intel Designer werden doch wissen, wieviele Takte ein P4 braucht, um Standardoperationen durchzuführen?!

AMC

zeckensack
2005-07-09, 02:05:41
Hier (http://developer.intel.com/design/pentium4/manuals/24896604.pdf). Anhang C.

Das funzt besser (http://www.intel.com/design/pentium4/manuals/248966.htm).

mapel110
2005-07-09, 02:10:08
Hier (http://developer.intel.com/design/pentium4/manuals/24896604.pdf). Anhang C.
Page not found :(

AMC
2005-07-09, 02:22:00
Ja, ich sehs auch gerade... :frown:

AMC

Sephiroth
2005-07-09, 02:25:53
Page not found :(
nehmen wir das http://www.intel.com/design/pentium4/manuals/248966.htm
IA-32 Intel(R) Architecture Optimization Reference Manual (http://download.intel.com/design/Pentium4/manuals/24896612.pdf)

Coda
2005-07-09, 02:38:32
Wus?!? :| Es ist nicht möglich anzugeben, wieviele Takte ein ADD Reg,Reg oder ADD Reg,Mem braucht? Das kann ich jetzt nicht ganz glauben.....! Die Intel Designer werden doch wissen, wieviele Takte ein P4 braucht, um Standardoperationen durchzuführen?!

AMCDu hast mich falsch verstanden. Es ist zwar möglich anzugeben wie lange eine Instruction braucht, du weißt aber nie wann sie anfängt, weil mehrere parallel ausgeführt werden.

Also Takt-Counting wie in pre-Pentium Zeiten ist nicht mehr ohne weiteres möglich, da must du schon genau wissen wie der Scheduler arbeitet.

Z.B.

add eax, ebx
imul edx, ecx

kann sicher in einem Takt ausgeführt werden, aber

add eax, ebx
imul edx, eax

braucht mindestens 2, weil es eine Abhängigkeit gibt. Das heißt aber nicht dass in diesem Fall der Scheduler nicht schon Instructions von weiter hinten schonmal ausführt (Out-Of-Order Execution)

Also selbst wenn du diese Informationen jetzt hast, werden sie dir ohne VTune usw. nicht viel nützen.

AnPapaSeiBua
2005-07-10, 20:21:12
Hi,

hab ne gute Liste hier (für Northwood) mit Troughput und Latency.


MfG
Jürgen


Edit: Hab den Link gefunden:
http://www.agner.org/assem/pentopt.pdf

Coda
2005-07-10, 21:27:55
Nortwood? WTF? Das Ding ist für den orginalen Pentium P5 und P5C.

AnPapaSeiBua
2005-07-11, 07:34:37
@Coda:
Auch ein bisschen mehr als den Titel des PDFs gelesen?

Coda
2005-07-11, 12:18:44
Uups. Srykthx.

zeckensack
2005-07-11, 16:12:42
Page not found :(Örks. Ich hatte nur nach "24896604.pdf site:intel.com" gegoogelt und bekam eine Seite wo das PDF verlinkt war. Ich hab' den Link nicht ausprobiert, ich Dummerchen :|
Mittlerweile findet Google garnichts mehr :conf2: