Вычисления с памятью

Вычисления с памятью

Вычисления с памятью - способ построения вычислительных платформ, в которых используются принцип хранения результатов функций в массивах памяти, одномерных или двухмерных, в виде таблиц соответствия (look up tables, LUT), а вычисление функций заменяется извлечением значения из таблиц. Такие вычислительные платформы могут следовать как чисто пространственной модели вычислений, как в ПЛИС, так и временно’й модели вычислений (процедурной), когда функция вычисляется за множество тактов. Второй подход нацелен на уменьшение избыточности интерконнекта в ПЛИС за счет совмещения операций обработки и передачи данных в одном вычислительном элементе. В этом подходе используются уплотнённые двухмерные массивы для хранения больших таблиц соответствий (LUT) со множественными входами и множественными выходами. Концепция Вычислений с памятью отличается от концепций Вычислений в памяти или Процессора в памяти Processor-in-memory (PIM), широко исследуемых в контексте интеграции процессора и памяти на одном кристалле, с целью уменьшения отклика памяти, и увеличения пропускной способности. Такие подходы ищут способы уменьшения расстояния на которое передаются данные между процессором и памятью. Одним из заметных вкладов в области архитектуры проектов PIM является проект Berkeley IRAM.

Вычисления с памятью обычно используют чтобы обеспечить преимущества, получаемые от аппаратной реконфигурируемости. Реконфигурируемые системы являются гибкой аппаратной платформой для быстрого прототипирования, что позволяет сократить цикл разработки и уменьшить время выхода на рынок новых устройств. ПЛИС является популярной платформой для реализации цифровых схем прежде всего на основе пространственной модели. С самого начала использования ПЛИС в 1985 их базовая структура состоит из двухмерного массива конфигурационных логических блоков (Configurable Logic Blocks) объединенных пространственной коммутационной средой в виде программируемой матрицы интерконнекта. Производительность и энергопотребление ПЛИС существенно зависит от архитектуры коммутационной среды, принципов распространения и синхронизации сигналов. Уменьшение влияния ограничений коммутационной среды достигается за счет расположения таблиц соответствия (LUT) в непосредственной близости друг от друга, называемых вместе кластерами, связи между кластерами также локализуются. Ввиду преимуществ кластерной архитектуры основные производители ПЛИС используют ее в своих коммерческих продуктах[1][2]. Для реализации больших таблиц соответствия также могут быть использованы блоки внутренней памяти[3]. Подобная гетерогенность элементов памяти улучшает заполняемость и быстродействие компонентов схем за счет минимизации и локализации связей.

Реконфигурируемые платформы на базе вычислений с памятью с итерационной (процедурной) моделью вычислений (или же комбинацией пространственной и итерационной модели) исследуются [4] в контексте повышения производительности и энергоэффективности относительно традиционных ПЛИС ориентированных в большей степени на пространственную модель (большое количество LUT с несколькими входами и одним выходом). Такие платформы известны как вычислители на памяти (ВнП) (Memory Based Computing (MBC)), в которых используются уплотненные двумерные массивы памяти для хранения в них таблиц соответствия (LUT). Такие каркасные конструкции полагаются на разбиение сложных функций (f) на более простые функции, которые хранятся в LUT с многими входами и выходами. Вычисление сложных функции происходит за несколько итераций вычисления простых функций. При создании ВнП могут быть эффективно использованы такие свойства устройств памяти [5] как высокая ёмкость, низкое энергопотребление, высокая производительность наноразмерной памяти. В ВнП базовый вычислительный блок представляет собой двумерный массив памяти в котором храняться таблицы соответствий (LUT), плюс необходимая логика управления для итерационного вычисления сложных функций. Такие вычислительные блоки объединяются пространственной коммутационной системой на основе эффективных решений отработанных в традиционных ПЛИС, причем за счет того, что данные локализованы и итерационно вычисляются требования к коммутационной системе существенно снижаются. Массив памяти в каждом вычислительном элементе может быть реализован на основе контентно-адресуемой памяти, что снижает объем требуемой памяти для некоторых приложений.

Если сравнивать MBC c FPGA то это родственные технологии, разница в том, что в MBC используется упрощенная коммутационная среда и реализация более сложного итерационного механизма поддержки вычислений на LUT с многими входами/выходами. Преимуществом MBC является простота элементной базы, основанной на устройствах памяти различного вида.

См. также

Примечания

  1. Xilinx Corporation
  2. Altera Corporation
  3. J. Cong and S. Xu, «Technology Mapping for FPGAs with Embedded Memory Blocks», Symposium on Field Programmable Gate Array, 1998.
  4. S. Paul and S. Bhunia, «Reconfigurable Computing Using Content Addressable Memory for Improved Performance and Resource Usage», Design Automation Conference, 2008.
  5. S. Paul, S. Chatterjee, S. Mukhopadhyay and S. Bhunia, «Nanoscale Reconfigurable Computing Using Non-Volatile 2-D STTRAM Array», International Conference on Nanotechnology, 2009.



Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Полезное


Смотреть что такое "Вычисления с памятью" в других словарях:

  • Параллельные вычисления — Не следует путать с Распределённые вычисления. Параллельные вычисления  такой способ организации компьютерных вычислений, при котором программы разрабатываются как набор взаимодействующих вычислительных процессов, работающих параллельно… …   Википедия

  • Ассоциативная память — Эта статья о компьютерных технологиях; о психологии см.: Ассоциация (психология). Ассоциативная память (АП) или Ассоциативное запоминающее устройство (АЗУ) является особым видом машинной памяти, используемой в приложениях очень быстрого поиска.… …   Википедия

  • Процессор в памяти — В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете …   Википедия

  • X86 — 80486 DX2 x86 (Intel 80x86)  аппаратная платформа: архитектура микропроцессора и соответствующий набор инструкций, как разработанных и выпускаемых компанией Intel, так и совместимых с ними процессоров других производителей (AMD, VIA …   Википедия

  • x86 — 80486 DX2 x86 (англ. Intel 80x86)  архитектура процессора c одноимённым наборо …   Википедия

  • OpenMP — (Open Multi Processing)  открытый стандарт для распараллеливания программ на языках Си, Си++ и Фортран. Описывает совокупность директив компилятора, библиотечных процедур и переменных окружения, которые предназначены для программирования… …   Википедия

  • История вычислительной техники — История науки …   Википедия

  • Unified Parallel C — (UPC) Класс языка: параллельный, императивный (процедурный), структурный Автор(ы): UPC Consortium Релиз: 2.12.2/2011 5 18 Типизация данных: статическая Основные реализации …   Википедия

  • Калькулятор — У этого термина существуют и другие значения, см. Калькулятор (значения). Современный инженерный калькулятор Калькулятор …   Википедия

  • D (язык программирования) — У этого термина существуют и другие значения, см. D. D Семантика: мультипарадигменный: императивное, объектно ориентированное, обобщённое программирование Тип исполнения: компилятор Появился в: 1999 Автор(ы) …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»