
Для так называемых вычислений в памяти (In-Memory Computing, IMC), когда, например, базы данных полностью загружаются в ОЗУ, а не хранятся на дисковых массивах, Western Digital представила новый продукт — Ultrastar DC ME200 Memory Extension Drive.
Несомненно, IMC — это новейшая парадигма производительности памяти. Как в ее рамках DC ME200 обеспечит масштабирование архитектуры ОЗУ на серверных платформах, обрабатывающих огромные массивы данных? Информации об этом в пресс-релизе Western Digital мало, будем читать между строк.
Два форм-фактора Memory Extension Drive
Выводя на рынок Ultrastar DC ME200 компания Western Digital задекларировала не новый тип твердотельного накопителя (уже известно, что в его основу положен проверенный временем DC SN200, хотя эту информацию стоит воспринимать, как «дымовую завесу» — инновационный продукт до поры до времени будет окутан флером своих коммерческих тайн), а усовершенствованный способ работы с оперативной памятью. Memory Extension Drive — не терабайтный накопитель, а своппинговое хранилище специфических данных ОС, доступное в двух исполнениях: классическая плата расширения для шины PCI Express 3.0 x8 и NVMe-устройство в форм-факторе SFF 2.5″ с разъемом подключения U.2 (SFF-8639). Продуктовая линейка состоит из накопителей объемом 1 ТБ (что-то около $5K), 2 ТБ и 4 ТБ.

Memory Extension Drive: идеальный сценарий
Побудительным мотивом для Western Digital стало желание оптимизировать тайминги транзакций, выполняемых между DRAM и внешними устройствами — неотъемлемой составляющей механизма своппинга на основе трансляции страниц, реализованной еще в процессорах i386 с защищенным режимом адресации памяти. Наилучшим решением стало бы прямое физическое отображение запоминающей матрицы SSD-накопителя в адресное пространство платформы. Это драматически снизило бы латентность (улучшив фактор IOPS) вследствие упразднения подкачки как таковой — обращение к требуемым страницам направлялось бы напрямую к носителю. В перемещении данных по маршрутам, показанным в инфографике пресс-релиза WD, тогда нет необходимости.

Memory Extension Drive: реальный сценарий
А между строк читается, что в архитектуре Ultrastar DC ME200 используется не концепция DAX, снимающая необходимость перекачки данных из NAND в DRAM. Сайт ServeTheHome прямо говорит об использовании высокопроизводительной эмуляции ScaleMP в обеспечение классического механизма своппинга, скорость которого просто возросла в силу улучшения скоростных характеристик твердотельного накопителя. То есть, перекачка по-прежнему нужна, но выполняется быстрее.
Программно-определяемая архитектура расширения системной памяти, используя механизм виртуальной адресации на основе трансляции страниц, эмулирует наличие большего объема ОЗУ, чем физически установлено. В стандартной ситуации исполнителем такой эмуляции является ОС, а клиентами — пользовательские приложения. Новизна решения, реализованного в Ultrastar DC ME200 и отраженного в пресс-релизе Western Digital, состоит в том, что выполняя эмуляцию на более низком уровне с помощью гипервизоров виртуализации, «иллюзию» наличия огромных объемов ОЗУ можно создать и у самой операционной системы, что коренным образом трансформирует стратегию управления памятью. Кроме того, применяя интеллектуальные алгоритмы на основе обучаемых систем удается достаточно достоверно спрогнозировать предстоящие последовательности обращений приложения к памяти и заблаговременно загрузить требуемые страницы.
Ultrastar DC ME200 в контексте NUMA
Давайте обратим внимание на рекомендацию, согласно которой желательно использовать по одному Memory Extension устройству на процессорный сокет:

Понятно желание дать каждому NUMA-домену (или группе доменов, локализованных в одном разъеме) собственное устройство расширения памяти. Независимо от примененного метода взаимодействия для достижения максимальной производительности топологическую дистанцию между инициатором и исполнителем транзакции (процессором и накопителем) необходимо минимизировать. Это означает, что каждый процессор должен максимально использовать накопитель, относящийся к локальному домену. В свою очередь, количество обращений к накопителю удаленного домена, желательно свести к минимуму — принципы NUMA-оптимизации распространяются на взаимодействие с подсистемой Mass Storage.
Резюме
В условиях, когда над революционными решениями еще предстоит основательно потрудиться, эволюционное решение от Western Digital выглядит весьма своевременным. Непонятно, правда, почему в маркетинговых документах, посвященных Ultrastar DC ME200 Memory Extension Drive, за кадром остаются процессоры AMD. И еще один вопрос: что по этому поводу думает Microsoft?