floating-point-Operationen pro Zyklus - intel

Ich Suche schon eine ganze Weile und kann nicht scheinen zu finden, ein offizieller/schlüssige Abbildung unter Angabe der Anzahl der single-precision-floating-point-Operationen/Takt, dass ein Intel Xeon quadcore abgeschlossen werden kann. Ich habe einen Intel Xeon quadcore E5530 CPU.

Ich bin der Hoffnung, es zu verwenden, um die Berechnung der maximalen theoretischen FLOP/s meine CPU erreichen kann.

MAX-FLOPS = (# Anzahl Kerne) * (Clock-Frequenz (Zyklen/sec)) * (#- FLOPS /Zyklus)

Nichts verweist mich in die richtige Richtung wäre hilfreich. Ich habe festgestellt, dass dies
FLOPS pro Zyklus für sandy-bridge und haswell SSE2/AVX/AVX2

Intel Core 2 und Nehalem:

4 DP-FLOPs/Zyklus: 2-Breite SSE2 neben + 2-breiten SSE2 Multiplikation

8 SP-FLOPs/Zyklus: 4-Breite SSE-Zusatz + 4-Breite SSE-Multiplikation

Aber ich bin mir nicht sicher, wo Sie diese zahlen gefunden wurden. Sind Sie unter der Annahme einer fused multiply-add (FMAD) Betrieb?

EDIT: Mit diesem, in DP berechne ich die richtige DP-Arithmetik Durchsatz angeführt von Intel als 38.4 GFLOP/s (zitiert hier). Für SP, ich bekomme das doppelte, 76.8 GFLOP/s. Ich bin mir ziemlich sicher, dass 4 DP-FLOPS/Zyklus und 8 SP FLOP/cycle ist richtig, ich möchte nur eine Bestätigung, wie Sie bekam die FLOPs/cycle-Wert von 4 und 8.

  • (8 SP-FLOPs/Zyklus) * (4-Kerne) * (2.4 GHz) = 76.8 GFLOP/s. Der Prozessor kann sowohl eine add-und multiply-Instruktion pro Zyklus. Aber Sie sind nicht miteinander verschmolzen.
  • Sie können wahrscheinlich nicht finden, eine offizielle Zahl, denn es ist nicht einer - es ist stark abhängig von der mix von Anweisungen, die Sie haben, und die Abhängigkeiten zwischen Ihnen. Das theoretische maximum könnte berechnet werden, aber es gibt sehr wenige nützliche real-world-Programme (andere als die synthetischen benchmarks), dass wäre genau der richtige mix von Anweisungen, die in genau der richtigen Reihenfolge zu erreichen, die maximale...
  • Und wenn Sie neugierig zu sehen, wie die Erreichung der maximalen FLOP/s nehmen Sie einen Blick auf: stackoverflow.com/questions/8389648/..., Dass man für die doppelte Genauigkeit, aber es kann leicht modifiziert werden, um so einfacher Genauigkeit.
  • In der Praxis ist man oft will, laden/speichern von Daten sowie eine Berechnung. So, während Sie theoretische Werte für die peak-FLOPS sind gut, um zu wissen, dass es nicht sehr sinnvoll, wenn die Daten nicht gelesen werden können in schnell genug, um dies zu erreichen. Eine weitere nützliche Metrik gibt auch die Anzahl der floating-point-laden/Läden, die gewonnen werden, während. E. g a SB core laden kann, 4 Doppelzimmer pro Takt und 8 Doppel-Operationen (4 Multiplikationen und 4 Ergänzungen) pro Takt-Zyklus. Die Beschaffung dieser ist schwieriger, als einfach nur tun, die Berechnung.
InformationsquelleAutor user3495341 | 2014-04-21
Schreibe einen Kommentar