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

9772
Darien Springer

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

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

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

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

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

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

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

17
Не могли бы вы привести соответствующее предложение / абзац / предложение дословно? Bob 7 лет назад 1
Автор ссылается на «стоимость» как денежный расход. sawdust 7 лет назад 37
Автор пытается избежать определенных наименований в этом обобщении ... эта версия предположительно более универсальна, чем "доллары на байт", "евро за йобибайт", "ха-пенни на клев", "блестящие камни на трит" или "цыплята за критрита" A C 7 лет назад 8
Язык немного неаккуратный, но цель состоит в том, чтобы указать количество: цена за единицу хранения. Вы можете, например, выразить это в единицах USD / GB. Автор смешал это, сказав стоимость (количество) за бит (единицу количества хранения). Martijn 7 лет назад 0
Не волнуйтесь, это аппаратная проблема. Samuel 7 лет назад 1
Доллары за бит - это крошечная, крошечная сумма, с которой большинство мозгов не могут справиться правильно. «Стоимость за гигабайт» дает гораздо более разумное число, и, вероятно, этот вопрос никогда бы не задавался. gnasher729 7 лет назад 0
Если вы можете получить 1 ГБ за 8 долларов, то это 8000000000 бит за 8 долларов, то есть 0,000000001 за каждый бит. user20574 7 лет назад 1

5 ответов на вопрос

26
gronostaj

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

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

25
davidgo

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

Таким образом, можно ли сказать, что стоимость - это объем памяти, необходимый конкретному типу памяти? Darien Springer 7 лет назад 0
Я не уверен, что понимаю вас, но я сомневаюсь в этом. Замените слова «стоимость за бит» стоимостью «за единицу сохраненной памяти» и посмотрите, имеет ли это для вас смысл. davidgo 7 лет назад 0
Даже если я заменю «стоимость за бит» на «стоимость за единицу памяти», я все еще не понимаю, что это значит, что стоимость будет. С чего взимается плата и что эта вещь теряет при более высокой стоимости? Darien Springer 7 лет назад 0
Интересно, не задумывались ли вы об этом? Стоимость может быть представлена ​​в долларах (или центах) для хранения объема памяти. С риском запутать вас больше (я надеюсь, что не буду) - если я захочу хранить 1 ТБ данных, я могу сохранить их на SSD или жестком диске - SSD будет быстрым, но будет стоить около 500 долларов, в то время как жесткий диск может стоить 100 долларов. Таким образом, более быстрое время доступа означает больше на единицу памяти. Точно так же, если я захочу хранить ТБ данных, это будет стоить мне около 160 долларов, в отличие от, скажем, 60 долларов за 1 ТБ - таким образом, стоимость одного ТБ для 5 ТБ составит 40 долларов, а не 60 долларов за 1 ТБ и, следовательно, меньшую стоимость за бит ... davidgo 7 лет назад 7
«цена за бит» эквивалентна стоимости за мегабайт для жестких дисков: я купил жесткий диск для своего Atari еще в 1989 году, и он стоил 250 долларов за 10 МБ, теперь вы можете получить 1 ТБ за 60 долларов, поэтому стоимость за мегабайт снизилась. .. Solar Mike 7 лет назад 5
Я думал об этом. Таким образом, «стоимость» относится к тому, сколько будет стоить покупка памяти с валютой. Я был смущен, потому что я думал, что это относится к некоторому ущербу какой-то другой памяти процесса. Darien Springer 7 лет назад 4
Я рад, что ты, кажется, понял это сейчас. davidgo 7 лет назад 2
Так как в заблуждении ОП сосредоточено слово «стоимость» (то есть то, что оно означает стоимость в денежном выражении), я бы предложил включить это в ответ. Jon Bentley 7 лет назад 2
Стоимость за бит может также измеряться чем-то, кроме финансовых затрат, если базовые физические реализации сопоставимы. Вы можете сравнить различные типы твердотельной памяти, основываясь на том, сколько транзисторов требуется, что может дать вам лучшее представление о том, почему один тип памяти стоит дороже, чем другой. chepner 7 лет назад 1
«Стоимость за бит» кажется странным поворотом фразы, хотя в мире, где десятилетиями повсеместно использовались восьмибитные байты, я впервые предположил, что использование битов, а не байтов, означает подсчет памяти ECC как девяти бит на байт. Random832 7 лет назад 0
@ Random832 "_Cost per bit_" будет использоваться, потому что это самый низкий общий знаменатель. Некоторые чипы оперативной памяти имеют (или были) ширину в один бит; некоторые (как вы заметили) имеют ширину 9 бит: говорить об их «стоимости на байт» было бы несколько странно ... безусловно, более странно, чем применять этот термин к байтово-ориентированным чипам памяти. TripeHound 7 лет назад 2
@DarienSpringer Итак, все, что говорится в оригинальной цитате, заключается в том, что если вам нужен более быстрый доступ (при прочих равных условиях), то каждый бит (единица хранения) будет дороже и так далее. TripeHound 7 лет назад 0
@davidgo: И в продолжение, сколько будет стоить хранить этот терабайт в оперативной памяти? (Около 4000 долларов, если я могу доверять ценам Google, и вы можете найти материнскую плату, которая поддерживает это.) Как насчет быстрой кэш-памяти? jamesqf 7 лет назад 0
Вы можете полностью хранить меньше информации, просто сделайте так, чтобы 0 и 1 имели разные вероятности. PyRulez 7 лет назад 0
3
Wayne Werner

В дополнение к этим другим ответам, которые справедливо упоминают, что стоимость за бит - это сумма денег за бит:

Если у вас есть память, которая хранит 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
CJM

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

Допустим, у вас есть какая-то память, любая память, которая стоит 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 долларов за бит]

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

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

Похожие вопросы