Не знаете, как использовать твердотельный накопитель Intel Optane DC в качестве дополнительной оперативной памяти с IMDT?
Я немного запутался в Intel Optane DC. Я хочу, чтобы мой Optane DC мог работать как с DRAM, так и с хранилищем. С одной стороны, я понял, что только "Intel Optane DC Persistent Memory DIMM" может работать как DRAM. Это потому, что у него есть 2 режима (режим памяти и режим App-Direct). С другой стороны, по этой ссылке: https://www.intel.com/content/www/us/en/products/docs/memory-storage/solid-state-drives/optane-ssd-dc-p4800x-mdt-brief.html Я прочитал, что "вместе DRAM и твердотельные накопители Intel® Optane™ с технологией Intel® Memory Drive имитируют единый пул энергозависимой памяти". Я сбит с толку, может ли твердотельный накопитель Intel Optane DC работать как DRAM или только DIMM с постоянной памятью Intel?
1 ответ
Да, вы можете использовать P4800x с программным обеспечением Intel IMDT (Intel Memory Drive Technology), чтобы создать иллюзию большего объема оперативной памяти, используя Optane DC SSD в качестве места подкачки. Это то, что вам нужно. IMDT настраивает гипервизор, который дает ОС иллюзию DRAM + SSD в качестве физической памяти, вместо того, чтобы просто позволить ОС использовать ее как пространство подкачки.
По-видимому, это хорошо работает, когда у вас уже достаточно физической памяти для большей части вашего рабочего набора, а IMDT имеет интеллектуальные алгоритмы предварительной выборки, которые пытаются выполнить подкачку до того, когда страница понадобится.
Одним из преимуществ запуска ОС под гипервизором IMDT вместо использования SSD в качестве пространства подкачки является то, что он заставит ОС использовать часть этого дополнительного пространства для кеширования страниц (также известного как кеширование диска), вместо того, чтобы использовать специальный код (некоторые из) SSD в качестве кеша для более медленного диска.
Но нет, это не постоянная память Optane DC, это что-то другое.
См. Также ответ SuperUser, чтобы узнать больше о Optane и Optane DC PM. И Хади Брайс добавил к нему несколько хороших разделов о IMDT для Optane SSD.
P4800x подключается через PCI-express (как вы можете видеть на рисунках на https://www.anandtech.com/show/11930/intel-optane-ssd-dc-p4800x-750gb-handson-review). Так что это не NV-DIMM; вы не можете вставить его в разъем DIMM и получить доступ к нему ЦП через шину памяти. Форм-фактор не DIMM.
Что касается оборудования, у бренда Optane есть 3 вещи:
Твердотельные накопители "Optane" потребительского класса. Просто быстрый PCIe NVMe, использующий память 3D XPoint вместо NAND flash.
SSD-накопители предприятия "Optane DC". Просто быстрый PCIe NVMe с памятью 3D XPoint. Не принципиально отличается от потребителя вещей, только быстрее и выше мощность потребления. P4800x это такой.
Функциональность "расширить вашу оперативную память" здесь - это чистое программное обеспечение, довольно похожее (и, возможно, хуже), чем просто создание на нем раздела подкачки и разрешение ОС обрабатывать его. Особенно, если вы еще не использовали виртуализацию.
Предприятие "Optane DC Persistent Memory" (сокращенно PM). Память 3D XPoint, которая действительно отображается (аппаратно) в физическое адресное пространство для доступа с помощью обычных инструкций загрузки / сохранения, без использования драйвера для каждого чтения / записи. например Linux
mmap(MAP_SYNC)
и используяclflush
илиclwb
asm инструкции в пользовательском пространстве для фиксации данных в постоянном хранилище.Однако PM по-прежнему медленнее, чем DRAM, поэтому, если вам просто нужна энергозависимая память, вы все равно можете использовать ее в качестве пространства подкачки, например IMDT. Одним из ключевых вариантов использования DC PM является предоставление базам данных возможности фиксироваться в постоянном хранилище без прохождения через ОС. Это позволяет выполнять операции ввода-вывода вне очереди, а также значительно снижает накладные расходы.
См. Статьи вроде https://www.techspot.com/news/79483-intel-announces-optane-dc-persistent-memory-dimms.html которых постоянная память Optane DC ставится выше Optane DC в классической пирамидальной иерархии хранения.
AFAIK, устройства Optane DC PM существуют только в форм-факторе DIMM, а не в PCIe (и используют что-то вроде сигнализации DDR4). Это требует специальной поддержки со стороны ЦП, поскольку современные ЦП интегрируют контроллер памяти.
Теоретически у вас может быть устройство PCIe, которое предоставляет некоторое постоянное хранилище в области памяти PCIe. Они являются частью физического адресного пространства и могут быть настроены как кэшируемые с обратной записью. (Или они могут? Отображение обратной записи области MMIO не работает) Таким образом, они могут быть отображены в памяти в виртуальное адресное пространство пользователя. Но я не думаю, что существуют какие-либо устройства с постоянной памятью PCIe Optane DC, вероятно, потому, что задержка команд PCIe (намного) выше, чем по шине DDR4. Пропускная способность также ниже. Поэтому имеет смысл использовать его как пространство для быстрой подкачки (копирование на всю страницу), а не как физическую кэшируемую память с обратной записью, из-за которой промахи в кэше могут ждать очень долго.
(Маргарет Блум также комментирует, что размер блока записи может быть проблемой.)
т.е. вам не нужна "горячая" часть вашего рабочего набора в памяти, к которой ЦП обращается по шине PCIe. Вы, вероятно, даже не хотите этого для Optane DC PM.
Optane / 3D XPoint - это всегда постоянное хранилище; Это зависит от программного обеспечения, воспользуетесь ли вы этим преимуществом или просто используете его как более медленную энергозависимую ОЗУ.
Это не буквально DRAM, который имеет конкретное техническое значение (динамический = данные, хранящиеся в крошечных конденсаторах, которые необходимо часто обновлять). 3D XPoint не является динамичным и даже не изменчивым. Но вы можете использовать его как эквивалент, потому что память 3D XPoint имеет очень хорошую устойчивость к записи (она не изнашивается, как флэш-память NAND). Если люди говорят об использовании Optane в качестве дополнительной DRAM, они используют этот термин просто для обозначения энергозависимой оперативной памяти, выполняя ту же роль, которую традиционно выполняет DRAM.