Apa artinya "biaya per bit"?

17

Saya membaca Sistem Operasi William Stallings ' : Internal dan Prinsip-prinsip Desain (Edisi Ketujuh) , dan sebuah bagian tentang hierarki memori membuat saya bingung. Apa yang dimaksud penulis ketika ia menyebutkan "biaya per bit lebih besar"?

Inilah yang paragraf yang relevan di halaman 24 mengatakan:

Seperti yang mungkin diharapkan, ada trade-off di antara tiga karakteristik utama memori: yaitu, kapasitas, waktu akses, dan biaya. Berbagai teknologi digunakan untuk mengimplementasikan sistem memori, dan di seluruh spektrum teknologi ini, hubungan berikut ini berlaku:

  • Waktu akses lebih cepat, biaya per bit lebih besar
  • Kapasitas lebih besar, biaya per bit lebih kecil
  • Kapasitas lebih besar, kecepatan akses lebih lambat

Saya mengerti bahwa semakin rendah Anda menuruni piramida hirarki memori, semakin lambat waktu akses.

Seperti, disk magnetik atau kartu SSD akan memiliki waktu akses lebih lambat daripada register CPU atau cache atau RAM.

Tetapi apa artinya menjadi "biaya per bit lebih besar"? Apakah ini memperlambat proses lain untuk mengakses memori ini? Itu akan tampak kontra-intuitif karena waktu akses seharusnya lebih cepat? Apakah mereka hanya mengambil lebih banyak ruang dan karenanya kurang?

Darien Springer
sumber
1
Bisakah Anda mengutip kalimat / paragraf / kalimat yang relevan secara verbal?
Bob
37
Penulis mengacu pada "biaya" sebagai biaya moneter.
serbuk gergaji
8
Penulis berusaha menghindari denominasi tertentu dalam generalisasi ini ... versi ini mungkin lebih bersifat umum daripada "dolar per byte", "euro per yobibyte", "ha'pennies per nibble", "shiny rocks per tryte", atau "ayam per qutrit"
AC
1
Jangan khawatir, itu masalah perangkat keras.
Samuel
1
Jika Anda bisa mendapatkan 1GB untuk $ 8 maka itu 8000000000 bit untuk $ 8, jadi itu $ 0,000000001 untuk setiap bit.
user253751

Jawaban:

26

Biaya per bit adalah biaya moneter (yaitu dalam dolar dan sen) per unit memori, itu saja, yaitu cara untuk mengatakan "mengasumsikan jumlah memori yang diperlukan adalah sama". (Anda juga bisa mengatakan biaya per manggung memori - tetapi menyebutkan ukuran menunjukkan penggunaan kasus. Sedikit bisa dibilang adalah jumlah terkecil yang dapat disimpan)

davidgo
sumber
7
Saya ingin tahu apakah Anda tidak terlalu memikirkan ini. Biaya dapat dianggap dalam $ (atau sen) biayanya untuk menyimpan jumlah memori. Dengan risiko membingungkan Anda lebih banyak (saya harap saya tidak) - jika saya ingin menyimpan 1TB data, saya dapat menyimpannya di SSD atau hard drive - SSD akan cepat, tetapi akan menelan biaya sekitar $ 500, sementara hard drive mungkin berharga $ 100. Dengan demikian waktu akses yang lebih cepat berarti lebih banyak per unit penyimpanan. Demikian pula, jika saya ingin menyimpan TB data, biayanya sekitar $ 160, dibandingkan dengan mengatakan $ 60 untuk 1TB - sehingga biaya per TB untuk 5 TB adalah $ 40 dibandingkan dengan $ 60 untuk 1TB dan dengan demikian biaya yang lebih kecil per bit ...
davidgo
5
"cost per bit" setara dengan biaya per megabyte untuk hard drive: Saya membeli hard drive untuk Atari saya pada tahun 1989 dan itu $ 250 untuk 10 MB, sekarang Anda bisa mendapatkan 1TB untuk $ 60 sehingga biaya per megabyte telah turun. ..
Solar Mike
4
Saya terlalu memikirkannya. Jadi "biaya" mengacu pada berapa banyak memori yang akan biaya untuk membeli dengan mata uang. Saya bingung karena saya pikir itu merujuk pada beberapa kerugian dari memori proses lainnya.
Darien Springer
2
Saya senang Anda sepertinya mendapatkannya sekarang.
davidgo
2
Karena kebingungan OP berpusat pada kata "biaya" (yaitu bahwa itu berarti biaya dalam hal uang), saya akan menyarankan memasukkan ini ke dalam jawabannya.
Jon Bentley
26

The biaya per bit hanya harga yang Anda harus membayar untuk jumlah tertentu memori.

Jika sejumlah memori merek X berharga $ 20 dan jumlah memori merek Y yang sama berharga $ 25, maka merek X memiliki biaya per bit yang lebih baik. Perbedaan biaya per bit jauh lebih nyata ketika membandingkan berbagai jenis memori (SRAM, DRAM, flash, SSD ...)

gronostaj
sumber
3

Selain jawaban lain yang dengan tepat menyebutkan bahwa biaya per bit adalah jumlah uang per bit:

Jika Anda memiliki memori yang menyimpan 1024 byte, itu adalah 8192 bit. Jika memori itu dikenakan biaya $ 10 maka itu akan menjadi $ 10 (biaya) / 8192 bit, atau $ 0,001220703125 per bit. Jika Anda memiliki memori dengan waktu akses yang lebih cepat, mungkin biayanya $ 20, dalam hal ini Anda akan mendapatkan $ 0,00244140625 per bit.

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

Saya pikir sedikit yang hilang jawaban lain adalah apa yang dikatakan Stallings tentang hubungan abadi antara tiga skenario:

Katakanlah Anda memiliki beberapa memori, memori apa saja, yang harganya $ 10 untuk tongkat 1GB dengan waktu akses 10ns ... oleh karena itu $ 10 / GB.

Apa yang dikatakan Stallings bahwa jika Anda ingin penyimpanan yang lebih cepat, itu akan lebih mahal, katakanlah $ 15 per 1GB dengan waktu akses 5ns = $ 15 / GB - biaya yang lebih tinggi per bit, dibandingkan dengan memori sebelumnya.

Jika Anda menginginkan stik yang lebih besar, Anda mungkin dikenakan biaya $ 15 untuk 2GB, kali ini menurunkan biaya per bit - $ 7,50 per GB. Namun tongkat yang lebih besar ini akan memiliki waktu akses yang lebih lambat, katakanlah 12ns.

Namun, Anda mungkin bisa mendapatkan versi premium dari tongkat yang lebih besar yang masih memiliki waktu akses 10ns, tetapi ini akan lebih mahal - mungkin $ 18 ($ 9 / GB).

Seperti dikatakan Stallings, "ada trade-off di antara tiga karakteristik utama memori: yaitu, kapasitas, waktu akses, dan biaya". Dan ia dengan benar menyatakan bahwa, seperti halnya saat ini, ini adalah kasus untuk teknologi / generasi memori sebelumnya, dan akan menjadi kasus untuk teknologi / generasi memori di masa depan.

[1GB = (1024) (1024) (1024) (8) = 8589934592 bit. Oleh karena itu, biaya literal per bit untuk memori $ 10 kami (di atas) adalah $ 0,0000000012 per bit]

CJM
sumber
Meskipun contoh Anda juga berfungsi, ini biasanya tidak diterapkan pada teknologi yang sama. Ini adalah pernyataan yang sangat terkenal dalam desain perangkat keras dan biasanya diartikan bahwa teknologi yang berbeda memiliki sifat yang berbeda: Misalnya Anda bisa memiliki cache L1 yang kecil tapi sangat cepat dan mahal atau Anda bisa mendapatkan GB hampir secara gratis saat menggunakan DDR RAM. Dan jika Anda melangkah lebih jauh, Anda bisa mendapatkan TB dengan menggunakan beberapa hard disk. Dan seterusnya. Ini adalah urutan besarnya yang diperhitungkan.
Voo
@ Vooo Meskipun skalanya berbeda, prinsip-prinsipnya sama. Namun bukan besarnya yang penting - itu adalah prinsip bahwa ada trade-off antara faktor-faktor yang bersaing. Anda bisa mendapatkan murah, cepat atau besar, tetapi tidak ketiganya. Seseorang mungkin memperluas argumen dengan menambahkan dalam ukuran fisik, konsumsi daya / panas Saat mendesain OS / aplikasi / alat / perangkat Anda, Anda harus menyeimbangkan hal-hal ini.
CJM
Ya prinsipnya yang penting. Saya hanya menunjukkan penggunaan umum di komunitas tempat pernyataan itu biasa digunakan - desain perangkat keras. Anda khawatir apakah akan membaca sesuatu dari cache, memori atau hard disk, bukan apakah memori Anda 5% lebih cepat atau tidak.
Voo
@Vo saya dengan CJM, dan saya akan memposting jawaban yang sama jika dia belum melakukannya. Ini tidak hanya digunakan dalam desain perangkat keras, tetapi juga digunakan oleh arsitek sistem, untuk menentukan konfigurasi terbaik yang mereka mampu.
Barmar
-1

Secara khusus, register CPU adalah jenis memori tercepat dan termahal. Mereka mengambil real estat paling berharga di seluruh PC. Berbagai tingkat cache lebih jauh dari perhitungan yang sebenarnya, dan waktu propagasi sinyal listrik mulai menjadi pertimbangan. Anda tidak dapat membangun semuanya dari register.

Christopher Hostage
sumber