Что означает «цена за бит»?

17

Я читаю « Операционные системы Уильяма Сталлингса : внутреннее устройство и принципы проектирования» (седьмое издание) , и отрывок об иерархии памяти меня запутал. Что автор имеет в виду, когда упоминает «большую цену за бит»?

Вот что говорит соответствующий параграф на странице 24:

Как и следовало ожидать, существует компромисс между тремя ключевыми характеристиками памяти: емкостью, временем доступа и стоимостью. Разнообразные технологии используются для реализации систем памяти, и по всему спектру технологий сохраняются следующие отношения:

  • Более быстрое время доступа, большая стоимость за бит
  • Большая емкость, меньшая стоимость за бит
  • Большая емкость, медленная скорость доступа

Я понимаю, что чем ниже вы спускаетесь по пирамиде иерархии памяти, тем медленнее время доступа.

Мол, магнитный диск или карта SSD будут иметь более медленное время доступа, чем регистры процессора или кэш-память или оперативная память.

Но что это значит для "большей стоимости за бит"? Замедляет ли он другие процессы для доступа к этой памяти? Это может показаться нелогичным, поскольку время доступа должно быть быстрее? Они просто занимают больше места и поэтому его меньше?

Дариен Спрингер
источник
1
Не могли бы вы привести соответствующее предложение / абзац / предложение дословно?
Боб
37
Автор ссылается на «стоимость» как денежный расход.
опилки
8
Автор пытается избежать определенных наименований в этом обобщении ... эта версия предположительно более универсальна, чем "доллары на байт", "евро за йобибайт", "ха-пенни на клев", "блестящие камни на трит" или "Цыплята за критри"
AC
1
Не волнуйтесь, это аппаратная проблема.
Самуил
1
Если вы можете получить 1 ГБ за 8 долларов, то это 8000000000 бит за 8 долларов, то есть 0,000000001 за каждый бит.
user253751

Ответы:

26

Стоимость за бит - это денежная стоимость (то есть в долларах и центах) за единицу памяти, вот и все, то есть способ сказать, «предполагая, что объем требуемой памяти одинаков». (Вы могли бы также сказать стоимость за гигабайт памяти - но упоминание размера подразумевает случай использования. Очень вероятно, что бит - это наименьшее количество, которое можно сохранить)

davidgo
источник
7
Интересно, не задумывались ли вы об этом? Стоимость может быть представлена ​​в долларах (или центах) для хранения объема памяти. С риском запутать вас больше (я надеюсь, что не буду) - если я хочу хранить 1 ТБ данных, я могу сохранить их на SSD или жестком диске - SSD будет быстрым, но будет стоить около 500 долларов, в то время как Жесткий диск может стоить 100 долларов. Таким образом, более быстрое время доступа означает больше на единицу памяти. Точно так же, если я захочу хранить ТБ данных, это будет стоить мне около 160 долларов, в отличие от 60 долларов за 1 ТБ - таким образом, стоимость одного ТБ для 5 ТБ составит 40 долларов, а не 60 долларов за 1 ТБ и, следовательно, меньшую стоимость за бит ...
Давидго
5
«цена за бит» эквивалентна стоимости за мегабайт для жестких дисков: я купил жесткий диск для своего Atari еще в 1989 году, и он стоил 250 долларов за 10 МБ, теперь вы можете получить 1 ТБ за 60 долларов, поэтому стоимость за мегабайт снизилась. ..
Солнечный Майк
4
Я думал об этом. Таким образом, «стоимость» относится к тому, сколько будет стоить память для покупки за валюту. Я был сбит с толку, потому что я думал, что это относится к некоторому ущербу какой-то другой памяти процесса.
Дариен Спрингер
2
Я рад, что ты, кажется, понял это сейчас.
Давидго
2
Поскольку в заблуждении ОП сосредоточено слово «стоимость» (т. Е. Оно означает стоимость в денежном выражении), я бы предложил включить это в ответ.
Джон Бентли
26

Стоимость одного бита только цена , которую вы должны заплатить за определенное количество памяти.

Если некоторый объем памяти бренда X стоит 20 долларов, а такой же объем памяти бренда Y - 25 долларов, то бренд X имеет лучшую цену за бит. Разница в цене на бит гораздо более выражена при сравнении разных видов памяти (SRAM, DRAM, flash, SSD ...)

gronostaj
источник
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

Я думаю, что то, чего не хватает другим ответам, - это то, что Сталлингс говорит о вечных отношениях между тремя сценариями:

Допустим, у вас есть какая-то память, любая память, которая стоит 10 долларов за 1 ГБ флешку со временем доступа 10 нс ... следовательно, 10 долларов США / ГБ.

Сталлингс говорит, что если вам нужно более быстрое хранилище, оно будет стоить больше, скажем, 15 долларов за 1 ГБ при времени доступа 5 нс = 15 долларов / ГБ - более высокая стоимость за бит по сравнению с предыдущей памятью.

Если вам нужны более крупные флешки, это может стоить вам 15 долларов за 2 ГБ, на этот раз снижая стоимость за бит - 7,50 долларов за ГБ. Тем не менее, эта большая карта будет иметь более медленное время доступа, скажем, 12 нс.

Тем не менее, вы можете получить премиум-версию более крупной флешки, у которой все еще есть время доступа 10 нс, но это будет стоить еще больше - возможно, 18 долларов (9 долларов США / ГБ).

Как говорит Сталлингс, «существует компромисс между тремя ключевыми характеристиками памяти: емкостью, временем доступа и стоимостью». И он правильно полагает, что так же, как это происходит в настоящее время, так было в случае с предыдущими технологиями / поколениями памяти, так и в случае будущих технологий / поколений памяти.

[1 ГБ = (1024) (1024) (1024) (8) = 8589934592 бит. Следовательно, буквальная стоимость за бит для нашей памяти за 10 долларов (выше) будет составлять 0,0000000012 долларов за бит]

CJM
источник
Хотя ваш пример также работает, это обычно не применяется к той же технологии. Это очень известное утверждение в проектировании аппаратного обеспечения, и обычно оно означает, что разные технологии имеют разные свойства: например, у вас может быть небольшой, но очень быстрый и дорогой кэш L1 или вы можете получить ГБ практически бесплатно при использовании оперативной памяти DDR. И если вы сделаете еще один шаг вперед, вы можете получить туберкулез, используя жесткий диск. И так далее. Это порядки величин, которые учитываются.
Voo
@ Voo Хотя масштаб отличается, принципы одинаковы. Однако важна не величина, а принцип компромисса между конкурирующими факторами. Вы можете получить дешевые, быстрые или большие, но не все три. Один из них можно расширить, добавив физический размер, Потребляемая мощность / тепло. При разработке вашей ОС / приложения / устройства / устройства вы должны сбалансировать эти вещи.
CJM
Да, принцип, что имеет значение. Я просто указываю на общее использование в сообществе, где обычно используется это утверждение - проектирование оборудования. Вы беспокоитесь о том, читать ли что-нибудь из кэша, памяти или жесткого диска, а не о том, быстрее ли ваша память на 5% или нет.
Voo
@ Я тоже с CJM, и я собирался опубликовать аналогичный ответ, если он еще этого не сделал. Это не только используется в проектировании аппаратного обеспечения, но также используется системными архитекторами для определения наилучшей конфигурации, которую они могут себе позволить.
Бармар
-1

В частности, регистры процессора являются самым быстрым и самым дорогим типом памяти. Они занимают самую ценную недвижимость на всем ПК. Различные уровни кэшей находятся дальше от фактических вычислений, и время распространения электрического сигнала начинает учитываться. Вы не можете построить все это из регистров.

Кристофер Заложник
источник