Я немного запутался в 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-rief.html Я прочитал, что «вместе DRAM и твердотельные накопители Intel® Optane ™ с технологией Intel® Memory Drive имитируют единый пул энергозависимой памяти». Я сбит с толку, может ли твердотельный накопитель Intel Optane DC работать как DRAM или только DIMM с постоянной памятью Intel?
Не знаете, как использовать SSD Intel Optane DC в качестве дополнительной оперативной памяти с IMDT?
Ответы (1)
Да, вы можете использовать P4800x с программным обеспечением Intel IMDT (Intel Memory Drive Technology), чтобы создать иллюзию большего объема оперативной памяти, используя Optane DC SSD в качестве места подкачки. Это то, что вам нужно. IMDT устанавливает гипервизор, который дает ОС иллюзию DRAM + SSD в качестве физической памяти, вместо того, чтобы просто позволить ОС использовать ее как пространство подкачки в обычном режиме.
По-видимому, это хорошо работает, когда у вас уже достаточно физической ОЗУ для большей части вашего рабочего набора, а IMDT имеет интеллектуальные алгоритмы предварительной выборки, которые пытаются выполнить подкачку до того, когда страница понадобится.
Одним из преимуществ запуска ОС под гипервизором IMDT вместо использования SSD в качестве пространства подкачки является то, что он заставит ОС использовать часть этого дополнительного пространства для кеширования страниц (также известного как кеширование диска), вместо того, чтобы использовать специальный код (некоторые из) SSD в качестве кеша для более медленного диска.
Но нет, это не постоянная память Optane DC, это что-то еще.
См. также ответ суперпользователя , чтобы узнать больше о 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.
Корпоративные твердотельные накопители Optane DC. Просто быстрый PCIe NVMe с памятью 3D XPoint. Не принципиально отличается от потребительских товаров, только быстрее и потребляет больше энергии. P4800x это такой.
Расширение функциональности ОЗУ здесь - это чистое программное обеспечение, довольно похожее (и, возможно, хуже), чем просто создание на нем раздела подкачки и разрешение ОС обрабатывать его подкачку. Особенно, если вы еще не использовали виртуализацию.
Enterprise Optane DC Постоянная память (сокращенно 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 традиционно.
mmap
блочных устройств в виртуальном адресном пространстве не имеет значения и отвлекает внимание в этом контексте. Как вы знаете, mmaping файла (без MAP_SYNC
) просто копирует в RAM и подделывает его с помощью программного обеспечения (ошибки страниц и грязный бит таблицы страниц). Интересной частью является отображение хранилища в физическое адресное пространство, что позволяет осуществлять постоянную фиксацию без взаимодействия с ОС.
- person Peter Cordes; 02.10.2019
clflushopt
или clwb
. Я думаю, что это ожидаемый режим использования, хотя, поскольку вы упомянули об этом, я предполагаю, что некэшируемый, WC или даже WT могут быть вариантами. Я думаю, что 3D XPoint имеет внутреннюю побайтовую адресацию, но IDK касается протокола команд шины. В моем ответе меня интересовало, существуют ли какие-либо устройства (Intel), которые предоставляют постоянный диапазон MMIO через PCIe, а не через DDR-T. Тем не менее, спасибо за дополнительную информацию о спецификациях реальных модулей NV-DIMM.
- person Peter Cordes; 03.10.2019