MCDRAM (англ. Multi-Channel DRAM, произносится Эм си ди RAM[1]) — перспективный вариант организации ОЗУ с применением динамической памяти (DRAM). Использует микросборки из нескольких кристаллов DRAM-памяти в едином корпусе. Применяется корпорацией Intel в ряде продуктов Xeon Phi второго поколения (72хх) под кодовым названием «Knights Landing». Является вариацией High Bandwidth Memory и конкурирует с стандартом Hybrid Memory Cube.

Процессоры Xeon Phi имеют более 50 ядер, оснащенных устройствами векторной обработки, что позволяет им обрабатывать большие объёмы данных за секунду, чем способна предоставить традиционная DRAM-память в форм-факторе DIMM. Многоканальность MCDRAM отражает использование в этой памяти значительно большего числа каналов доступа между процессором и памятью, чем у процессоров, использующих DIMM-модули[2]. Благодаря большему количеству каналов данный вид памяти обеспечивает большую пропускную способность (до порядка 400 гигабайт/с), хотя и сохраняет близкие к DIMM задержки доступа[3].

Увеличение общей ширины каналов доступа к памяти накладывает ограничения на размещение памяти. В Xeon Phi память MCDRAM распаяна на едином модуле («multi-chip package») с процессором и не подлежит замене или расширению. В «Knights Landing» используется MCDRAM общим объемом 16 ГБ[4], организованная в 8 микросборок[5][6].

Программный доступ править

Процессоры Xeon Phi 2-го поколения (сокет LGA3647-1) поддерживают одновременно и MCDRAM (8 каналов, 16 ГБ, скорости до 400 ГБ/с[7]) и традиционную DIMM DDR4 SDRAM память (6 каналов, до 384 ГБ[8], скорости порядка 90 ГБ/с[7]). При загрузке могут быть выбраны различные способы распределения памяти и программного доступа. Часть более быстрой MCDRAM памяти может быть выделена в качестве дополнительной кэширующей памяти при доступе к DDR4, оставшаяся память MCDRAM отображается в собственное физическое адресное пространство. Таким образом, доступны три режима: Cache mode (вся MCDRAM используется как кэш), Flat mode (вся MCDRAM отображена по отдельным адресам) и Hybrid mode (часть как кэш, часть доступна непосредственно; например 8+8 ГБ)[7][9].

Приложения могут настроить размещение разных страниц виртуальной памяти, относя их либо напрямую к памяти DDR4, либо к памяти DDR4, кэшируемой MCDRAM, либо непосредственно к части MCDRAM, не используемой как кэш. Для размещения страниц предлагается программный интерфейс memkind[10] или numactl[7].

При использовании MCDRAM в качестве кэша, доступ к ячейкам, не закэшированным в данный момент приводит к промаху и увеличенным задержкам доступа к данным (более высоким, чем при доступе к DDR4, не использующей MCDRAM-кэш). Из-за этого может потребоваться дополнительная настройка приложений [11].

Примечания править

  1. Mike P. (sic). An Intro to MCDRAM (High Bandwidth Memory) on Knights Landing. software.intel.com (20 января 2016). Дата обращения: 18 апреля 2016. Архивировано 22 октября 2016 года.
  2. Ian Cutress. A few notes on Intel's Knights Landing and MDRAM modes from SC15. www.anandtech.com (16 ноября 2015). Дата обращения: 18 апреля 2016. Архивировано 27 октября 2016 года.
  3. ISC 2015 - Intelが語った次世代Xeon Phi「Knights Landing」 (3) DDRとMCDRAMの2種類のメモリを使い分けできるKNL | マイナビニュース. Дата обращения: 20 ноября 2016. Архивировано 21 ноября 2016 года.
  4. Intel® Xeon Phi™ Processor. Дата обращения: 20 ноября 2016. Архивировано 26 февраля 2017 года.
  5. Intel’s Xeon Phi to House 72 Cores. System-in-package sports 16-Gbytes Архивная копия от 24 июня 2016 на Wayback Machine / EETimes, 2015-03-25
  6. https://www-ssl.intel.com/content/dam/www/public/us/en/documents/datasheets/xeon-phi-processor-x200-product-family-datasheet.pdf «Eight MCDRAM on-package memory modules with 16 GB capacity total … multi-chip package»
  7. 1 2 3 4 Intel® Developer Zone. Дата обращения: 20 ноября 2016. Архивировано 12 ноября 2020 года.
  8. Intel® Xeon Phi™ Processor 7210 (16GB, 1.30 GHz, 64 core) Specifications. Дата обращения: 20 ноября 2016. Архивировано 7 сентября 2017 года.
  9. A Few Notes on Intel’s Knights Landing and MCDRAM Modes from SC15. Дата обращения: 20 ноября 2016. Архивировано 27 октября 2016 года.
  10. Christopher Cantalupo. User Extensible Heap Manager for Heterogeneous Memory Platforms and Mixed Memory Policies. memkind.github.io (18 марта 2015). Дата обращения: 18 апреля 2016. Архивировано 7 августа 2017 года.
  11. Mike P. (sic). MCDRAM (High Bandwidth Memory) on Knights Landing – Analysis Methods & Tools. software.intel.com (10 марта 2016). Дата обращения: 18 апреля 2016. Архивировано 28 февраля 2017 года.

Ссылки править