Процессор в памяти

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Процессор в памяти, Processor-in-memory (PIM), или Вычисляющее ОЗУ или Computational RAM, C-RAM, также, "Вычисления в памяти", называют процессор, тесно интегрированный в память, как правило, на одном кремниевом кристалле, либо, оперативную память с интегрированными вычисляющими элементами.

Главная цель объединения процессорного компонента и компоненты памяти таким способом—уменьшение латентности (времени отклика) памяти и увеличение пропускной способности. Достигнутое таким путем сокращение расстояния, на которое данные должны быть перенесены снижает требования к мощности системы. Большинство сложности современных процессоров (а, следовательно, и их энергопотребления) вытекает из требования избегания задержек обмена данных с памятью, и реализации этой стратегии в кремнии.

Примеры[править | править вики-текст]

В 1980-х годах, крошечный процессор, исполняющий программы FORTH был изготовлен в DRAM чипе для убыстрения операций PUSH и POP. FORTH является стек-ориентированным языком программирования, и это повысило его эффективность.

Транспьютер также имел большую память на чипе, учитывая, что эти чипы были изготовлены в начале 1980-х годов, это делает его, по существу, Процессором-в-памяти.

Заметные PIM проекты включают: проект IRAM в университете Калифорнии, Беркли; и PIM проект в Университете Нотр-Дам.

Вычисляющая память (Соmputational RAM)[править | править вики-текст]

Вычисляющее ОЗУ или C-RAM - это ОЗУ с процессорными элементами, интегрированными в проект единой микросхемы. Это позволяет использовать его в качестве SIMD компьютера. Он также может использоваться для более эффективного использования пропускной способности памяти в памяти чипа.

Пожалуй, наиболее влиятельные, в этой области, реализации вычисляющих ОЗУ пришли из проекта IRAM в Беркли.

В некоторых чрезвычайно параллельных (embarrassingly parallel) вычислительных задачах уже архитектура фон Неймана ставит ограничения в виде узкого места между CPU и DRAM (Узкое место архитектуры фон Неймана). Некоторые исследователи считают, что для той же суммарной стоимости, машина, построенная в вычислительной оперативной памяти будет работать на порядок быстрее, чем в традиционных ЭВМ общего назначения на эти видах задач.

На 2011 год, процессы изготовления чипов, "DRAM процесс" (несколько слоев; оптимизирован для высокой электрической емкости) и "CPU процесс" (многие слои; процесс оптимизирован для высокой частоты; относительно дорогой на квадратный миллиметр) отличаются достаточно сильно, так, что есть три подхода к изготовлению Вычисляющего ОЗУ:

  • начать с процессора - оптимизация процесса и устройство, которое использует множество встроенных SRAM, добавить дополнительный шаг процесса (что делает его еще дороже в пересчете на квадратный миллиметр), чтобы разрешить замену встроенной SRAM на встроенную (embedded) DRAM (eDRAM), давая ~3-кратную экономию площади в районах SRAM (и, следовательно, снижение себестоимости на чипе).
  • начать с системы с отдельным чипом CPU и DRAM чипом(-ами), добавить небольшое количество "сопроцессорной" вычислительных функций к DRAM, работая в рамках DRAM процесса и добавляя только в небольших количествах области в DRAM, чтобы делать вещи, которые в противном случае были бы замедлились в узкое горлышко между CPU и DRAM: обнуление выделенных областей памяти, копирование больших блоков данных из одного места в другое, поиск где есть (если есть) заданный байт в некотором блоке данных, и т.д. В результате система - без изменений CPU чипа, и со "смарт-DRAM-чипом(ами)" - по крайней мере, так же быстра, как и в исходной системе, и, возможно, немного ниже по стоимости. Стоимость небольшого размера дополнительной области, как ожидается, будет более чем возвращена во счет экономии дорогих (т.к. долгих) проверок памяти, так как на смарт-DRAM сейчас достаточно вычислительной мощности - для пластин кремния ("вафель") полных DRAM-ами для выполнения большинства проверок на памяти внутренне и параллельно, а не традиционным подходом полных проверок одного DRAM чипа за раз с использованием дорогого внешнего автоматического тестирующего оборудования.
  • начать с DRAM-оптимизированного процесса, настроить процесс так, чтобы сделать его немного более похожим на "CPU процесс", и построить (с относительно низкой частотой, но низким энергопотреблением и очень высокой пропускной способностью) процессор общего назначения в пределах этого процесса. Проект Беркли IRAM (англ.), TOMI Technology.

См. также[править | править вики-текст]

Ссылки[править | править вики-текст]

  • Duncan Elliott, Michael Stumm, W. Martin Snelgrove, Christian Cojocaru, Robert McKenzie, "Computational RAM: Implementing Processors in Memory," IEEE Design and Test of Computers, vol. 16, no. 1, pp. 32–41, Jan-Mar, 1999. [1]