Berechnung der RAM CL Timings und MB/s

Status
Für weitere Antworten geschlossen.
Bei einem Bus geht es, die CPU ist kein Bus, wie oft noch, sie hat zwar auch Datenleitungen, aber dafür müsstest du erst mal alle addieren und wissen wo hin sie gehen können, eine CPU hat ja nicht nur ein Anschluss wo Daten rein können.

Im übrigen, lese dir mal die Links von mir durch, evtl. wird es dir dann etwas klar, warum das nicht einfach mal so geht.
 
Ich weiß was ein Transistor ist Ein/Aus-Schalter einfach gesagt und keine Angst ich kenne mich mit Elektronik mehr als gut aus.

Was ändert es an der Tatsache, das eine CPU trotzdem kein Bus ist, gar nix, lese einfach mal das durch was ich die verlinkt habe, damit du mal verstehst was eine CPU ist und was man mit Ein/Aus so alles machen kann.

Als Elektroniker solltest du doch SPS-Programmieren könen oder Logo oder ähnliches, dort ist es doch ähnlich, du kannst aus einfach AND/OR eine ganze Menge basteln, genauso funktioniert eine CPU eigentlich auch, du kannst sie als Logikgitter sehen, aber halt eine ganze Menge davon.
 
Ja ihr seid beide schlau. Schön...

Der Takt von HyperTransport ist dabei über einen Multiplikator und den Referenztakt von 200 MHz festgelegt. Häufig wird dieser Takt fälschlicherweise als „FSB“ bezeichnet.
Quelle

Das als erstes. CPUs arbeiten intern auch mit Bus-System, welche aber gar nichts mit dem FSB von damals zu tun haben (SandyBridge bpsw. mit einem ring interconnect/ringbus).

Als zweites: Nicht die Kerne entscheiden über den Faktor sondern die Anzahl der Speicherkanäle. Bei Phenom II hast du wie gesagt vier Speichercontroller welche zu jeweils zwei zusammengefasst werden. Also 2*64 Bit. Die IMC sind assoziativ, dass heisst die können untereinander kommunizieren bzw. Daten verschieben (was würde man sonst bei einem triple-core erwarten?! ;)). Heutzutage gibt es kaum noch CPUs welche nur einen Speicherkanal verwenden (Intels Atom z.B.). Also kann man schon fest mit 128 Bit Bandbreite rechnen.

Deine Rechnungen sind mathematisch wie gesagt weitgehend korrekt, aber verständishalber sind sie unlogisch. Die waitstates sind eben nicht direkt vom Takt abhängig. Die theoretische Bandbreite kann man sich in null komma nix errechnen. Aber Latenzen und deren sub-timings eben nicht. Die folgen keiner Regel. Sonst gäbe es ja auch nicht so viel unterschiedliche DDR3-1333-Module. Mal CL7 mal CL8 mal CL9. Das ist jedoch auch nur die Cas-Latency (kurz gesagt ist das die Angabe in nano-Sekunden wie lange die Speicherzelle zwischen Adressierung und Datenabruf benötigt). Wie ich bereits sagte gibt es aber deutlich mehr Regeln welche beachtet werden. Ist ja auch davon abhängig welchen Speicher wir nun vorliegen haben.

Also bitte, bitte versuche einfach nicht mehr timings mathematisch zu errechnen. :)
 
Zuletzt bearbeitet:
die Daten fliesen durch den CPU-Kern wie Wasser durch ein Rohr, dabei werden die ströme durch die Transistoren verändert die Fliessgeschwindigkeit ist immer gleich, da wird nicht angehalten oder beschleunigt, nur im fließen geändert je mehr Transistoren des tu mehr ströme oder DATEN können geändert (Berechnet) werden.

der Speicher gibt die maximale Berechnungsgeschwindigkeit vor
das bedeutet je mehr Daten aus dem RAM kommen des tu mehr können berechnet werden.
trotzdem hat eine CPU ein theoretische Maximum das durch die anzahl der Transistoren begrenzt wird außer dem kann man noch im BIOS verschiedenes einstellen um den Datenfluss zu regulieren.

man kann auch an der Anzahl der Transistoren das Maximum berechnen
 
Zuletzt bearbeitet:
Nicht nur der RAM sondern auch der IMC selber. Beim C2D/C2Q war das ja bspw. der Flaschenhals überhaupt.
 
Deine Vorstellung einer CPU ist zu einfach, wenn du davon ausgehst, was rein und was raus fließen kannst musst du die Bandbreite vom Bus ausrechnen, z.B. die Speicheranbindung welche du ja mittlerweile hast.
Ob die CPU jetzt die Bandbreite vom Bus voll ausnutzen kann hängt nur davon ab was sie zu berechnen hat, wenn sie viel zu rechnen hat, dann kann es sein das der Bus nicht annähernd was zu tun hat, wenn sie nur von PCIe zu RAM schaufelt, bremst wieder der Bus.

Das wäre ja alles ohne wirklich große Probleme möglich, dafür musst du aber wie gesagt den Bus nehmen und nicht die CPU selber, die hat intern auch noch mehrere Datenkanäle, das wir in dem Link vor paar Posts etwas erklärt.

Wie willst du bitte die Bandbreite aus den Transistoren berechnen, das geht mit den Angaben die du hast ein mal gar nicht, du weißt ja nicht mal was die Transistoren machen ^^


@hübie
Ich glaub das mit dem Speicher hat er ja jetzt langsam durch, vom IMC hat er einfach die Angabe vom AMD direkt genommen.
 
hübie schrieb:
Nicht nur der RAM sondern auch der IMC selber. Beim C2D/C2Q war das ja bspw. der Flaschenhals überhaupt.

Dieser Fall tritt erst ein wenn, die Kapazität der Speichers die der CPU übersteigt.
aber so genau wollen wir das im Moment nicht wissen, den da gibt es eine menge Faktoren die die tatsächliche-Daten-ausbeute massive beeinflussen

wir wollen nur das theoretischen Maximum meiner CPU errechnen
Ergänzung ()

Commander Alex schrieb:
Deine Vorstellung einer CPU ist zu einfach, wenn du davon ausgehst, was rein und was raus fließen kannst musst du die Bandbreite vom Bus ausrechnen, z.B. die Speicheranbindung welche du ja mittlerweile hast.
Ob die CPU jetzt die Bandbreite vom Bus voll ausnutzen kann hängt nur davon ab was sie zu berechnen hat, wenn sie viel zu rechnen hat, dann kann es sein das der Bus nicht annähernd was zu tun hat, wenn sie nur von PCIe zu RAM schaufelt, bremst wieder der Bus.

Das wäre ja alles ohne wirklich große Probleme möglich, dafür musst du aber wie gesagt den Bus nehmen und nicht die CPU selber, die hat intern auch noch mehrere Datenkanäle, das wir in dem Link vor paar Posts etwas erklärt.

Wie willst du bitte die Bandbreite aus den Transistoren berechnen, das geht mit den Angaben die du hast ein mal gar nicht, du weißt ja nicht mal was die Transistoren machen ^^


@hübie
Ich glaub das mit dem Speicher hat er ja jetzt langsam durch, vom IMC hat er einfach die Angabe vom AMD direkt genommen.


ja ihr habt es erfasst, es ist wirklich so einfach

Gott sie dank
Ergänzung ()

CPU Bandbreite begrenzt durch BIOS

FSB
FSB: 200MHZ * 4Core = 800MHz-Effektive-FSB
FSB: 200MHz * 16Mulit = 3200MHz

CPU
CPU: 3200MHz * 4Core = 12800MHz-Effektive
CPU: 12800MHz * 8Bit = 102400MBits/s
BW: 102400MBits/s / 8 = 12800MByt/s


Vereinfachte Formel:
800FSB * 16Multi = 12800MB/s
Ergänzung ()

man kann eine CPU auch wie eine Flugzeug Turbine sehen sie hat kein Limit je mehr du Gas gibst des tu schneller dreht sie bis zum Bruch.
Ergänzung ()

seit ihr bereit für teil 3 ??

El Bandolero schrieb:
Zitat von Teil 3

DualCannel
den DualCannel-Bus muss man sich wie ein Förderband vorstellen und den DDR-RAM wie ein Huhn das Eier legt

_._._#_._._._._._._._._#_._._._._._._._._#_._._._._._._._._#_._._._._._._._._#_. _._._._._._._._#_._._

ich fasse das mal in Worte:
Die punkte ( . ) stellen die Frequenz dar und die Raute ( # ) den Zeitpunkt zu dem der Speicher für eine Aktion bereit ist (Lesen oder Schreiben).
ein Speicher ist ein Kondensator und benötigt eine bestimmte zeit für das laden oder entladen z.B. 10ns.


1-Sek / 400MHz = 1-Sek / 400.000.000-Herz = 0,0000000025-Sek. (2,5 Nano Sekunden)
damit haben wir die zeit abstände zwischen zwei Takten des DDR-Buses = 2,5 Nano Sekunden


nun kommt die berümte Wikipedia Formel zum Einsatz (die anscheinend von den wenigsten verstanden wurde):
400MHz (Speichertakt) *2 (zwei Bit Daten pro Takt) * 64Bit (Bandbreite der Speicheranbindung / 8 (in Byte umrechnen) = 6400MB/s


64 Bit Bandbreite (es werden 64 Kondensatoren auf/entladen)
64 Bit = 8 Byte (Bit in Byte umrechnen)
DualCannel = ein/auslesen gleichzeitig somit: * 2 = 16-Byte
16-Byte * 400-MHz = 6400-Byte pro Sekunde

das sagt uns aber nur was die maximale Bandbreite des DDR-Buses, bei 400MHz ist, wie viele Daten tatsächlich übertragen werden hängt vom Huhn ab (RAM).

der RAM kann wegen seiner Latenz nur z.B. in jedem 8. Takt (Herz) einmal 8-Byte auf das Förderband absetzen, somit ist die tatsächliche Bandbreite:

6400 / CL8 = 800 * 8-Byte * 2-DualCannel = 12800MB/s
6400 / CL11 = 582 * 8-Byte * 2-DualCannel = 9303MB/s
Ergänzung ()

Commander Alex schrieb:
Wie willst du bitte die Bandbreite aus den Transistoren berechnen, das geht mit den Angaben die du hast ein mal gar nicht, du weißt ja nicht mal was die Transistoren machen ^^

Ach so, das habe ich übersehen
sorry
wie genau man das mach? weiß ich auch im Moment nicht, weil ich davon nichts habe.
aber schwer kann das nicht sein ungefähr so:

1 Transistor berechnet 1 Bit * menge der Transistoren sagen wir mal 100Milionen / 8 = / 200MHz
 
Zuletzt bearbeitet:
An deiner letzten Rechnung habe ich nix auszusetzen. Im großen und ganzen kommt das hin. ;)
 
Zu beachten ist das in einer CPU nicht alle Transistoren funktionieren (Fehlerquote) dehalb werden die CPUs herunter getaktet auf einen Durchschnitts wert bei dem genügend Transistoren funktionieren
Ergänzung ()

hübie schrieb:
an deiner letzten rechnung habe ich nix auszusetzen. Im großen und ganzen kommt das hin. ;)

danke!!!!
Ergänzung ()

Dann gibt es noch diese Special Edition CPUs, die aus einer guten Produktion stammen, die laufen natürlich einwenig besser
Ergänzung ()

hübie schrieb:
Wer nichts macht, macht nichts verkehrt:D
Und hat nicht von seinem leben auch kein Geld.
die Reichen machen alles und kommen ungestraft davon.
Ergänzung ()

Also ich habe jetzt genug gerechnet.
Ich bin hier ins Forum gekommen damit mir jemand sagt welche CPU, RAM, MainBoard, und GraKa ich mir kaufen soll, weil ich zu faul war mir das selber auszurechnen.

Nun habt ihr genug Infos um mir ein PC zusammen zu stellen, es soll ein der auslaufenden Generation sein PCIe 2.1, PCIe 3.0 lohnt sich im Moment noch nicht.
 
Zuletzt bearbeitet:
Hi,

dann mach mal einen neues Fred auf und Poste hier den Link zu deiner Zusammenstellung.

Als Hilfe:

https://www.computerbase.de/forum/t...g-pc-spiele-pc-selbst-zusammenstellen.215394/

Zu PCIe 3.0
Wenn Grafikkarte und Mainboard PCIe 3.0 unterstützen, dann wird es auch verwendet. Kannst aich nichts gegen machen, macht auch keinen Sinn.

PCIe 3.0 Grafikkarten:
http://geizhals.at/de/?cat=gra16_512&xf=143_PCIe+3.0&sort=p

Wenn du dir eine Ivy CPU holst, hast du auch PCIe 3.0, bei Sandy wäre es maximal PCIe 2.x.

MFG
 
Torry_PB schrieb:
Aber nun noch zu das was Du suchst, .... Glaube ich habe verstanden was Du möchtest ! Alle Geräte CPU, Speicher und Grafikkarte sollen mit dem gleichen Datendurchsatz funktionieren...

Torry_PB hat es schon auf den Punkt gebracht
PCIe 3.0 ist noch zu teuer und die RAMs haben nicht genug POWER, ab DDR4 lohnt sich PCIe 3.0 (vielleicht).
Ergänzung ()

Meine Theorie V1.0, kann Fehler enthalten bitte berichtigen wenn so!!!

außerdem habe ich nicht geschlafen und später geh ich noch zur GamesCom :-)



Die Frequenz ist immer (Phenom) 200MHz, die Frequenzen steigen nicht, nur die Bandbreite.

das müsst ihr euch wie wellen auf dem Meer vorstellen:
100 wellen hintereinander, auf jeder welle ist ein Surfer (32Bit) 100 wellen pro Sekunde =

Core 0+1 = 100 * 32Bit = 3200MBit/s = 400MByte/s
Core 2+3 = 100 * 32Bit = 3200MBit/s = 400MByte/s
…...................................= 6400MBit/s = 800MByte/s (64Bit)

tatsächlich gibt es keinen echten QuadCore CPUs, im Moment, nur DualCore und 64Bit Computer gibt es auch nicht 2*32Bit.
Das wird alles nur zusammengerechnet

um die Datenmenge zu erhöhen, müsst ihr die welle verbreitern, damit 2 Surfer nebeneinander surfen können.

100 *2 = 200 *2 = 400 * 2 = 800MHz so wird es gerechnet
in Wirklichkeit macht der Computer nicht weiter als, die welle zu verbreiten 100MHz * 32Bit * 4 = 12800MBit/s *16 / 8 = 25600MB/s

die Maschine (CPU RAM...) kennt keine Byte nur Bit, die Byte sind nur für die Programme wichtig.

somit haben wir die maximale theoretische Bandbreite der CPU ermittelt 25600MB/s, wie viel davon genutzt wird hängt vom RAM ab.

oder sind es 16Bit????
ich hoffe das da alles stimmt lol
 
Zuletzt bearbeitet:
*kann....nicht....widerstehen....*

Was machst Du mit 3-Kern-Prozessoren?

ich hoffe das da alles stimmt lol
Nein. Die Links wurden ja schon genannt.
 
6-Core CPU mit anbindung Triple-Channel-RAM

intel_core_i7_980x_architecture_triple_channel_memory_controller-jpg.293804

die Cores sind deutlich zu sehen 2 * 3-Core




Quad-Core CPU mit anbindung Dual-Channel-RAM

quadcore_-jpg.293805

die Cores sind deutlich zu sehen 2 * 2-Core




8-Core CPU mit anbindung Dual-Channel-RAM

8core-jpg.293806

die Cores sind deutlich zu sehen 2 * 4-Core



TripleCore dürfte ja dann wohl klaaaa sein oder???
Ergänzung ()

El Bandolero schrieb:
oder sind es 16Bit????
ja es sind 16Bit
das sagt uns schon der RAM 16Bit * 2-DDR * 2 DualCannel

irgend wo ist der wiki Link doch schon mal hier gepostet worden, der über den RAM...
Ergänzung ()

TorenAltair schrieb:
*kann....nicht....widerstehen....*

Was machst Du mit 3-Kern-Prozessoren?


Nein. Die Links wurden ja schon genannt.
Mathematik ist nicht dein stärke?
by the way, wer nicht rechnen kann, wird auch NIE ein Computer verstehen.

Computer nennt man auch Rechner (mit gutem Grund)



Und dann auch noch dieser total bescheuerte Spruch.
TorenAltair schrieb:
Nein. Die Links wurden ja schon genannt.
Erkläre mir doch mal diese links, BITTE!!!!
 

Anhänge

  • Intel_Core_i7_980X_architecture_triple_channel_memory_controller.jpg
    Intel_Core_i7_980X_architecture_triple_channel_memory_controller.jpg
    185,4 KB · Aufrufe: 813
  • QuadCore_.jpg
    QuadCore_.jpg
    416,5 KB · Aufrufe: 815
  • 8Core.jpg
    8Core.jpg
    106 KB · Aufrufe: 493
Zuletzt bearbeitet:
habe es verbessert

Meine Theorie V1.1, kann Fehler enthalten bitte berichtigen wenn so!!!


Die Frequenz ist immer (Phenom) 200MHz, die Frequenzen steigen nicht, nur die Bandbreite.

das müsst ihr euch wie wellen auf dem Meer vorstellen:
100 wellen hintereinander, auf jeder welle ist ein Surfer (16Bit) 100 wellen pro Sekunde =

Core 0+1 = 100MHz * 16Bit = 1600MBit/s = 200MByte/s (ist zugleich SingeCannel)
Core 2+3 = 100MHz * 16Bit = 1600MBit/s = 200MByte/s (ist zugleich SingeCannel)
..........................= 400MBit/s = 400MByte/s (64Bit) (ist zugleich DualCannel)


tatsächlich gibt es keinen echten QuadCore CPUs, im Moment, nur DualCore und SingleCore und 64Bit Computer gibt es auch nicht, nur 4 * 16Bit = 64Bit
Das wird alles nur zusammengerechnet, der Grund dafür ist die Wellenlänge.
Je kürzer die welle, des tu kürzer wird die darauf getragene Information.

um die Datenmenge zu erhöhen, müsst ihr die welle verbreitern, damit 2 Surfer nebeneinander surfen
können.

100 *2 = 200 *2 = 400 * 2 = 800MHz so wird es gerechnet.
In Wirklichkeit macht der Computer nicht weiter als, die welle zu verbreiten =
100MHz * 2 = 200MHz = 4 * 16Bit = 64Bit : 64000MBit/s *16 / 8 = 12800MB/s

die Maschine (CPU RAM...) kennt keine Byte nur Bit, die Byte sind nur für die Programme wichtig.

somit haben wir die maximale theoretische Bandbreite der CPU ermittelt 12800MB/s bei 16 * Multiplikator. Wie viel davon genutzt wird hängt vom RAM ab.


Stellt euch die CPU wie ein gefressiges Monster vor und den RAM als den Sklaven der das Monster füttern muss. Das Monster frisst, verdaut und scheißt in die Grafikkarte.
Aber, das Monster kann nur so viel Kacken, wie es frisst.
Das bedeutet was der RAM gibt, das kommt bei der Grafikkarte auch an (verarbeitet).
Ergänzung ()

metallica2006 schrieb:
hi,

ja oder mit 5 Cores?
(PII bei dem nur ein Kern unlockbar ist.)

Mach doch mal eine Bsp. Rechnung

Jetzt sind wir an einem Punkt angekommen, an dem ich euch nicht weiter helfen kann.

Weil!
Ich diese CPUs NICHT herstelle ich weiß nicht mit welchen Trix und Methoden die Hersteller ein 5-Core an ein Triple oder DualCannel anbinden.
Sicher wird es dafür eine logische Erklärung geben.
aber ich kenne sie nicht und kann nur raten wie sie das machen, wobei es auch noch verschiedene Wege geben kann z.B. ein 5-Core mir DualCannel zu verbinden.
 
Zuletzt bearbeitet:
somit haben wir die maximale theoretische Bandbreite der CPU ermittelt 12800MB/s bei 16 * Multiplikator. Wie viel davon genutzt wird hängt vom RAM ab.

Hallo,

ohne alles von Deinen leicht wirren Ausführungen zu lesen. Der Satz reicht ja, um Deine Rechenbeispiele ab Absurdum zu führen.

Wenn ich meine CPU untertakte, sie nicht mit dem vorgegebenen Multi von 16 sondern nur mit einem Multi mit 8 betreibe, weil sie so weniger Strom verbrät, warum bleibt dann der Speicherdurchsatz, die Bandbreite, gleich?

In diesem Sinne,

Blubbs
 
BlubbsDE schrieb:
ohne alles von Deinen leicht wirren Ausführungen zu lesen.

dann solltest du das!
würde uns eine menge fragen und antworte ersparen.
 
Zuletzt bearbeitet:
Hallo,

deine Berechnungsgrundlage in Sachen Bandbreitenberechnung ist doch falsch. Der Multi spielt Null Rolle dabei. Der Speicherdurchsatz ändert sich mit einem anderen Multi nicht. Und Du nutzt den Multi in jedem Versuch Deiner Berechnung. Also stimmt das doch vorne und hinten nicht.

Grüße,

Blubbs
 
Ich versteh nicht warum ihr euch so wehrt?
Ist doch nur die Antwort auf eure fragen!

Es ist die Wahrheit nichts weiter!
Bis mir jemand das Gegenteil beweist!

Das sind die Spielregen der Wissenschaft und wenn ihr mitspielen wollt, dann müsst ihr euch auch an die Spielregeln halten!

Nur beweise zählen, kein Vermutungen und dumme Sprüche!
Ergänzung ()

BlubbsDE schrieb:
Hallo,

deine Berechnungsgrundlage in Sachen Bandbreitenberechnung ist doch falsch. Der Multi spielt Null Rolle dabei. Der Speicherdurchsatz ändert sich mit einem anderen Multi nicht. Und Du nutzt den Multi in jedem Versuch Deiner Berechnung. Also stimmt das doch vorne und hinten nicht.

Grüße,

Blubbs

rechne es mir vor
ich warte
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben