Was bedeutet "Kosten pro Bit"?

17

Ich lese gerade die Betriebssysteme von William Stallings : Internals and Design Principles (Siebte Ausgabe) und eine Passage über die Speicherhierarchie hat mich verwirrt. Was bedeutet der Autor, wenn er von "höheren Kosten pro Bit" spricht?

Im entsprechenden Absatz auf Seite 24 heißt es:

Wie zu erwarten ist, gibt es einen Kompromiss zwischen den drei Schlüsselmerkmalen des Speichers: Kapazität, Zugriffszeit und Kosten. Eine Vielzahl von Technologien wird zum Implementieren von Speichersystemen verwendet, und für dieses Technologiespektrum gelten die folgenden Beziehungen:

  • Schnellere Zugriffszeit, höhere Kosten pro Bit
  • Höhere Kapazität, geringere Kosten pro Bit
  • Höhere Kapazität, langsamere Zugriffsgeschwindigkeit

Ich verstehe, dass die Zugriffszeit umso langsamer ist, je tiefer Sie in der Pyramide der Speicherhierarchie stehen.

Eine Magnetplatte oder eine SSD-Karte hat langsamere Zugriffszeiten als die CPU-Register oder der Cache oder der RAM.

Aber was bedeutet es, dass es "höhere Kosten pro Bit" gibt? Verlangsamt es andere Prozesse, um auf diesen Speicher zuzugreifen? Das erscheint kontraintuitiv, da die Zugriffszeiten schneller sein sollen? Nehmen sie nur mehr Platz in Anspruch und es gibt weniger davon?

Darien Springer
quelle
1
Könnten Sie den relevanten Satz / Absatz / Satz wörtlich zitieren?
Bob
37
Der Autor bezeichnet "Kosten" als monetären Aufwand.
Sägemehl
8
Der Autor versucht, bestimmte Bezeichnungen in dieser Verallgemeinerung zu vermeiden ... diese Version ist vermutlich allgemeiner als "Dollar pro Byte", "Euro pro Yobibyte", "Ha'pennies pro Nibble", "Glänzende Steine ​​pro Tryte" oder "Hühner pro Qutrit"
AC
1
Keine Sorge, das ist ein Hardwareproblem.
Samuel
1
Wenn Sie 1 GB für 8 USD erhalten können, sind das 8000000000 Bits für 8 USD, also 0,000000001 USD für jedes Bit.
user253751

Antworten:

26

Die Kosten pro Bit sind die monetären Kosten (dh in Dollar und Cent) pro Speichereinheit, das ist alles, dh eine Art zu sagen, "vorausgesetzt, die benötigte Speichermenge ist gleich". (Sie können auch die Kosten pro Gig Speicher angeben - die Angabe der Größe impliziert jedoch einen Anwendungsfall. Ein bisschen ist wahrscheinlich die kleinste Menge, die gespeichert werden kann.)

Davidgo
quelle
7
Ich frage mich, ob Sie das nicht überdenken. Die Kosten können in US-Dollar (oder Cent) angegeben werden, die für die Speicherung der Speichermenge anfallen. Es besteht die Gefahr, dass Sie mehr verwirrt werden (ich hoffe nicht) - wenn ich 1 TB Daten speichern möchte, kann ich sie auf einer SSD oder einer Festplatte speichern - die SSD ist schnell, kostet jedoch ca. 500 USD Die Festplatte kostet möglicherweise 100 US-Dollar. Eine schnellere Zugriffszeit bedeutet somit mehr pro Speichereinheit. Wenn ich TB an Daten speichern möchte, kostet mich das ungefähr 160 USD, im Gegensatz zu 60 USD für 1 TB - somit betragen die Kosten pro TB für 5 TB 40 USD im Gegensatz zu 60 USD für 1 TB und damit geringere Kosten pro Bit ...
Davidgo
5
"Kosten pro Bit" entsprechen den Kosten pro Megabyte für Festplatten: Ich habe 1989 eine Festplatte für meinen Atari gekauft und sie kostete 250 US-Dollar für 10 MB. Jetzt können Sie 1 TB für 60 US-Dollar erhalten, sodass die Kosten pro Megabyte gesunken sind. ..
Solar Mike
4
Ich habe darüber nachgedacht. Die "Kosten" beziehen sich also darauf, wie viel der Speicher kosten würde, um mit der Währung zu kaufen. Ich war verwirrt, weil ich dachte, dass es sich um eine Beeinträchtigung eines anderen Prozessspeichers handelt.
Darien Springer
2
Ich freue mich, dass Sie es jetzt verstanden haben.
Davidgo
2
Da sich die Verwirrung des OP auf das Wort "Kosten" konzentriert (dh dass es Kosten in Bezug auf Geld bedeutet), würde ich vorschlagen, dies in die Antwort aufzunehmen.
Jon Bentley
26

Die Kosten pro Bit sind nur der Preis, den Sie für eine bestimmte Speichermenge zahlen müssen.

Wenn eine bestimmte Menge an Marke-X-Speicher 20 US-Dollar kostet und die gleiche Menge an Marke-Y-Speicher 25 US-Dollar kostet, hat Marke X bessere Kosten pro Bit. Die Unterschiede bei den Kosten pro Bit sind beim Vergleich verschiedener Speicherarten (SRAM, DRAM, Flash, SSD ...) viel ausgeprägter.

gronostaj
quelle
3

Zusätzlich zu diesen anderen Antworten, die zu Recht erwähnen, dass die Kosten pro Bit der Geldbetrag pro Bit sind:

Wenn Sie einen Speicher haben, der 1024 Bytes speichert, sind das 8192 Bits. Wenn dieser Speicher Sie 10 US-Dollar kosten würde, wären es 10 US-Dollar (Kosten) / 8192 Bit oder 0,001220703125 US-Dollar pro Bit. Wenn Sie Speicher mit einer schnelleren Zugriffszeit hätten, würde dies möglicherweise 20 USD kosten. In diesem Fall hätten Sie 0,00244140625 USD pro Bit.

Faster access time: $0.00244140625  cost per bit 
Greater capacity:   $0.001220703125 cost per bit
Wayne Werner
quelle
1

Ich denke, dass andere Antworten fehlen, was Stallings über die beständige Beziehung zwischen den drei Szenarien sagt:

Nehmen wir an, Sie haben etwas Speicher, einen beliebigen Speicher, der 10 US-Dollar für einen 1-GB-Stick mit einer Zugriffszeit von 10 ns kostet ... also 10 US-Dollar pro GB.

Was Stallings sagt, ist, dass wenn Sie schnelleren Speicher möchten, dieser mehr kostet, sagen wir 15 USD pro 1 GB bei einer Zugriffszeit von 5 ns = 15 USD / GB - höhere Kosten pro Bit im Vergleich zum vorherigen Speicher.

Wenn Sie größere Sticks benötigen, kostet dies möglicherweise 15 US-Dollar für 2 GB. Diesmal werden die Kosten pro Bit gesenkt - 7,50 US-Dollar pro GB. Dieser größere Stick hat jedoch eine langsamere Zugriffszeit, z. B. 12 ns.

Es ist jedoch möglich, dass Sie eine Premium-Version des größeren Sticks erhalten, der noch eine Zugriffszeit von 10 ns hat. Dies würde jedoch noch mehr kosten - vielleicht 18 US-Dollar (9 US-Dollar / GB).

Wie Stallings sagt, "gibt es einen Kompromiss zwischen den drei Schlüsselmerkmalen des Speichers: Kapazität, Zugriffszeit und Kosten". Und er schlägt zu Recht vor, dass dies, wie dies derzeit der Fall ist, für frühere Technologien / Generationen von Speicher der Fall war und für zukünftige Speichertechnologien / Generationen der Fall sein wird.

[1 GB = (1024) (1024) (1024) (8) = 8589934592 Bits. Daher würden die tatsächlichen Kosten pro Bit für unseren 10-Dollar-Speicher (oben) 0,0000000012 US-Dollar pro Bit betragen.]

CJM
quelle
Während Ihr Beispiel auch funktioniert, wird dies normalerweise nicht auf dieselbe Technologie angewendet. Dies ist eine sehr bekannte Aussage im Hardwaredesign und bedeutet normalerweise, dass verschiedene Technologien unterschiedliche Eigenschaften haben: Sie können beispielsweise entweder einen kleinen, aber sehr schnellen und teuren L1-Cache haben oder GBs bei Verwendung von DDR-RAM fast kostenlos erhalten. Und wenn Sie einen Schritt weiter gehen, können Sie TBs erhalten, indem Sie eine Festplatte verwenden. Und so weiter. Auf die Größenordnung kommt es an.
Voo
@Voo Obwohl der Maßstab unterschiedlich ist, sind die Prinzipien gleich. Es kommt jedoch nicht auf die Größe an, sondern auf das Prinzip, dass es einen Kompromiss zwischen den konkurrierenden Faktoren gibt. Sie können billig, schnell oder groß werden, aber nicht alle drei. Stromverbrauch / Wärme. Beim Entwerfen Ihres Betriebssystems / Ihrer Anwendung / Ihrer Appliance / Ihres Geräts müssen Sie diese Dinge ausbalancieren.
CJM
Ja, auf das Prinzip kommt es an. Ich möchte nur auf die allgemeine Verwendung in der Community hinweisen, in der diese Aussage normalerweise verwendet wird - Hardware-Design. Sie machen sich Gedanken darüber, ob Sie etwas aus dem Cache, dem Speicher oder der Festplatte lesen möchten, und nicht, ob Ihr Speicher 5% schneller ist oder nicht.
Voo
@Voo Ich bin bei CJM und ich würde eine ähnliche Antwort posten, wenn er es nicht schon getan hätte. Dies wird nicht nur beim Hardware-Design verwendet, sondern auch von Systemarchitekten, um die beste Konfiguration zu ermitteln, die sie sich leisten können.
Barmar
-1

Insbesondere sind die CPU-Register der schnellste und teuerste Speichertyp. Sie nehmen die wertvollste Immobilie im gesamten PC ein. Die verschiedenen Ebenen der Caches sind weiter von der eigentlichen Berechnung entfernt, und die Laufzeit des elektrischen Signals spielt eine Rolle. Sie können nicht alles aus Registern zusammensetzen.

Christopher Geisel
quelle