RAM-Größe> L2-Cache-Größe> L1-Cache-Größe> Interne Register einer CPU

2805
Karthik Balaguru

Ich verstehe, dass die Zugriffsgeschwindigkeit von internen Registern im Vergleich zu L1-Cache sehr hoch ist und auf L1-Cache schneller als auf L2-Cache zugegriffen werden kann, auf die wiederum schneller zugegriffen werden kann als auf RAM. Ich frage mich jedoch, warum die Größe der internen Register immer geringer ist als die des L1-Caches und warum die Größe des L1-Caches meistens weniger ist als die des L2-Caches, die wiederum immer kleiner ist als die der RAM-Größe.

0

2 Antworten auf die Frage

5
Josip Medved

Meistens aus Kostengründen. Schnellerer Speicher ist kostspieliger in der Herstellung. Aus Leistungsgründen möchten Sie, dass die Register so schnell wie möglich sind, aber Sie möchten auch die Prozessorkosten niedrig halten. Der Designer entschied sich daher für ein ausreichend gutes Maß für diesen Speicher, der die Kosten unter Kontrolle hält und die Leistung in einem akzeptablen Bereich hält.

Um die Leistung noch zu verbessern, hat sich jemand dafür entschieden, einen L1-Cache mit etwas billigerem Speicher zu erstellen, der jedoch immer noch schneller ist als der Arbeitsspeicher. Da es billiger ist, können wir natürlich mehr als Register, aber immer noch weniger als billigen Arbeitsspeicher einsetzen. So fand der Designer auch hier Gleichgewicht.

Und die Geschichte geht weiter zum Lx-Cache ...

1
Egon

Grundsätzlich sind Register in die CPU eingebaut und können daher direkt manipuliert werden. Wenn Sie ein solches L1 aufbauen möchten, wäre die Verkabelung zu hoch - auch die Drahtlatenzzeit würde die Zugriffsgeschwindigkeit auf solche großen Register beeinflussen.

Es ist auch teuer, RAM so schnell wie L1 / L2-Cache zu machen.

Genauere und ausführlichere Informationen dazu finden Sie unter Was jeder Programmierer über den Speicher wissen sollte .