「ビットあたりのコスト」とはどういう意味ですか?


17

William StallingsのOperating Systems:Internals and Design Principles(Seventh Edition)を読んでいますが、メモリ階層に関する一節で混乱しました。著者が「ビットあたりのコストが高い」と言うとき、著者はどういう意味ですか?

24ページの関連する段落の内容は次のとおりです。

予想されるように、メモリの3つの重要な特性の間にはトレードオフがあります。つまり、容量、アクセス時間、およびコストです。メモリシステムの実装にはさまざまなテクノロジが使用され、このテクノロジの範囲全体で、次の関係が成り立ちます。

  • アクセス時間の短縮、ビットあたりのコストの増加
  • 大容量、ビットあたりのコストの削減
  • 大容量、低速アクセス速度

メモリ階層のピラミッドを下に行くほどアクセス時間が遅くなることを理解しています。

同様に、磁気ディスクまたはSSDカードは、CPUレジスタまたはキャッシュまたはRAMよりもアクセス時間が遅くなります。

しかし、「ビットあたりのコストが大きい」とはどういう意味ですか?このメモリにアクセスするために他のプロセスを遅くしますか?アクセス時間が速くなるはずなので、それは直感に反するように思えますか?彼らは単により多くのスペースを占有するので、それはより少ないのですか?


1
関連する文/段落/文を逐語的に引用してもらえますか?
ボブ

37
著者は、「費用」を金銭的費用と呼んでいます。
おがくず

8
著者は、この一般化で特定の宗派を避けようとしています...このバージョンは、おそらく「バイトあたりのドル」、「ヨビバイトあたりのユーロ」、「ニブルあたりのハペニー」、「トリテあたりのシャイニーロック」、または「qutritあたり鶏」
AC

1
心配しないでください、それはハードウェアの問題です。
サミュエル

1
$ 8で1GBを取得できる場合、それは$ 8で8000000000ビットであるため、各ビットで$ 0.000000001です。
user253751

回答:


26

ビットあたりのコストは、メモリの単位あたりの金銭的なコスト(ドルとセント)です。つまり、「必要なメモリの量が同じであると仮定する」ということです。(メモリのギガあたりのコストも同様に言うことができます-しかし、サイズに言及することは使用事例を意味します。ビットは非常に間違いなく格納できる最小量です)


7
あなたはこれを考え過ぎないのだろうか。コストは、メモリ量を保存するのにかかるコストを$(またはセント)で考えることができます。混乱を招く恐れがあります(そうしないことを望みます)-1TBのデータを保存したい場合、SSDまたはハードドライブに保存できます-SSDは高速ですが、約500ドルかかりますが、ハードドライブの価格は100ドルになる場合があります。したがって、アクセス時間が短縮されると、ストレージの単位あたりのアクセス時間が長くなります。同様に、TBのデータを保存する場合、1TBで60ドルではなく約160ドルかかります。したがって、5TBのTBあたりのコストは1TBで60ドルであるため、ビットあたりのコストは小さくなります。
-davidgo

5
「ビットあたりのコスト」は、ハードドライブのメガバイトあたりのコストに相当します。1989年にアタリ用にハードドライブを購入しました。 ..
ソーラーマイク

4
考え直していました。そのため、「コスト」とは、通貨で購入するのにメモリがどれだけかかるかを指します。私はそれが他のプロセスメモリのいくつかの不利益に言及していると思ったので混乱しました。
ダリエンスプリンガー

2
私はあなたが今それを手に入れるように見えることを嬉しく思います。
-davidgo

2
OPの混乱は「コスト」という言葉に集中しているため(つまり、お金の観点からコストを意味する)、これを回答に組み込むことをお勧めします。
ジョンベントレー

26

ビットあたりコストは、特定のメモリ量に対して支払う必要がある価格です。

ブランドXのメモリの一部が20ドルで、同じ量のブランドYのメモリが25ドルの場合、ブランドXのビットあたりのコストは高くなります。異なる種類のメモリ(SRAM、DRAM、フラッシュ、SSD ...)を比較すると、ビットごとのコストの差がより顕著になります。


3

ビットあたりのコストはビットあたりの金額であると正しく言及しているこれらの他の回答に加えて:

1024バイトを格納するメモリがある場合、それは8192ビットです。そのメモリのコストが10ドルであれば、10ドル(コスト)/ 8192ビット、またはビットあたり0.001220703125になります。より高速なアクセス時間のメモリがある場合、代わりに20ドルかかる可能性があります。その場合、ビットあたり0.00244140625ドルになります。

Faster access time: $0.00244140625  cost per bit 
Greater capacity:   $0.001220703125 cost per bit

1

他の答えが欠けているのは、3つのシナリオ間の永続的な関係についてStallingsが言っていることです。

10nsのアクセス時間で1GBのスティックに10ドルかかるメモリ、つまりメモリがあるとしましょう。

Stallingsが言っているのは、より高速なストレージが必要な場合、1ギガバイトあたり15ドルのアクセス時間で15ドル= 1ギガバイトあたり15ドル-以前のメモリに比べてビットあたりのコストが高くなるということです。

より大きなスティックが必要な場合は、2GBで15ドルかかりますが、今回はビットあたりのコスト-GBあたり$ 7.50になります。ただし、この大きなスティックのアクセス時間は遅くなります(12nsなど)。

ただし、アクセス時間はまだ10nsの大きなスティックのプレミアムバージョンを入手できる場合がありますが、これにはさらにコストがかかります(おそらく$ 18($ 9 / GB))。

Stallingsが言うように、「メモリの3つの重要な特性の間にはトレードオフがあります。つまり、容量、アクセス時間、およびコストです」。そして彼は、これが現在のケースであるように、これはメモリの以前の技術/世代のケースであり、将来のメモリ技術/世代のケースであると正しく示唆しています。

[1GB =(1024)(1024)(1024)(8)= 8589934592ビット。したがって、10ドルのメモリ(上記)のビットあたりのリテラルコストは、ビットあたり0.0000000012ドルになります]


あなたの例も機能しますが、これは通常同じテクノロジーには適用されません。これはハードウェア設計で非常によく知られた声明であり、通常、異なるテクノロジーには異なる特性があることを意味するものと見なされます:たとえば、小さいながらも非常に高速で高価なL1キャッシュを使用するか、DDR RAMを使用する場合にほぼ無料でGBを取得できます。さらに一歩進めば、ハードディスクを使用してTBを取得できます。等々。重要なのは桁違いです。
-Voo

@Voo規模は異なりますが、原則は同じです。しかし、それは重要なことではありません-競合する要素の間にはトレードオフが存在するという原則です。電力消費/熱。OS /アプリケーション/アプライアンス/デバイスを設計するとき、これらのことをバランスさせる必要があります。
CJM

はい、重要なのは原則です。私は、そのステートメントが通常使用されるコミュニティでの一般的な使用法、つまりハードウェア設計を指摘しているだけです。メモリが5%高速であるかどうかではなく、キャッシュ、メモリ、またはハードディスクから何かを読み取るかどうかを心配します。
Voo

@Voo私はCJMと一緒にいます。彼がまだそうしていなければ、同様の答えを投稿するつもりでした。これはハードウェア設計で使用されるだけでなく、システム設計者が使用できる最適な構成を決定するためにも使用されます。
バーマー

-1

具体的には、CPUレジスタは最速で最も高価なタイプのメモリです。彼らはPC全体で最も貴重な不動産を占有します。キャッシュのさまざまなレベルは実際の計算からさらに離れており、電気信号の伝播時間が考慮され始めています。レジスタからすべてを構築することはできません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.