Трехмерные вычисления: новая архитектура для ускорения матричных операций

Автор: Денис Аветисян


Исследователи представили инновационную 3D-интегрированную архитектуру, позволяющую выполнять широкий спектр матричных вычислений непосредственно в памяти.

Предлагаемая архитектура объединяет в себе два слоя - слой SRAM и слой eDRAM - посредством монолитной 3D-интеграции, при этом каждый из них разделен на подмассивы, способные выполнять транспонирование матриц, поэлементное умножение и операции накопления.
Предлагаемая архитектура объединяет в себе два слоя — слой SRAM и слой eDRAM — посредством монолитной 3D-интеграции, при этом каждый из них разделен на подмассивы, способные выполнять транспонирование матриц, поэлементное умножение и операции накопления.

Предлагаемая система объединяет SRAM и eDRAM для реализации высокопроизводительных вычислений в памяти, включая транспонирование и поэлементные операции.

🚀 Квантовые новости

Подключайся к потоку квантовых мемов, теорий и откровений из параллельной вселенной.
Только сингулярные инсайты — никакой скуки.

Присоединиться к каналу

Несмотря на стремительное развитие глубоких нейронных сетей, существующие архитектуры вычислений в памяти (CIM) зачастую ограничены операциями скалярного произведения, испытывая трудности при реализации универсальных матричных операций. В данной работе, посвященной ‘GEM3D CIM General Purpose Matrix Computation Using 3D Integrated SRAM eDRAM Hybrid Compute In Memory on Memory Architecture’, предложена 3D-интегрированная гибридная архитектура SRAM-eDRAM, реализующая вычисления непосредственно в памяти с 4-битной точностью. Разработанная структура, использующая специализированный подход на основе транспонирования и 3D-интеграцию, обеспечивает баланс между задержкой, энергоэффективностью и плотностью вычислений для широкого спектра матричных операций. Не расширит ли предложенный подход возможности CIM за рамки операций скалярного произведения, открывая новые горизонты для ускорения ИИ и высокопроизводительных вычислений?


Стена Памяти: Предел AI-вычислений

Традиционные вычислительные архитектуры сталкиваются с проблемой, известной как “стена памяти”, которая заключается в растущем несоответствии между скоростью обработки данных и временем доступа к ним. По мере увеличения вычислительной мощности процессоров, скорость доступа к оперативной памяти отстает, создавая узкое место. Это происходит потому, что физические ограничения, такие как расстояние, по которому данным необходимо перемещаться между процессором и памятью, и скорость передачи данных, не успевают за экспоненциальным ростом вычислительных возможностей. В результате, процессор часто простаивает, ожидая поступления данных, что снижает общую производительность и увеличивает энергопотребление. Данная проблема особенно актуальна для современных задач машинного обучения, требующих обработки огромных объемов данных, и является одним из ключевых препятствий на пути к созданию более эффективных и масштабируемых систем искусственного интеллекта.

Современные рабочие нагрузки машинного обучения, в особенности глубокие нейронные сети, сталкиваются с серьезными ограничениями производительности и энергоэффективности из-за существенного разрыва между скоростью обработки и скоростью доступа к данным. Этот “узкий проход”, возникающий из-за необходимости постоянного перемещения больших объемов информации между памятью и вычислительными ядрами, существенно замедляет обучение и вывод моделей. Постоянная транспортировка данных требует значительных энергетических затрат, что препятствует созданию масштабируемых и энергоэффективных систем искусственного интеллекта. В результате, даже при наличии мощных процессоров, производительность ограничивается скоростью, с которой данные могут быть доставлены к ним для обработки, что требует поиска новых архитектур и подходов к вычислениям.

Постоянная передача данных между блоками памяти и вычислительными ядрами представляет собой фундаментальное ограничение для масштабируемости и внедрения современных систем искусственного интеллекта. Эта проблема, известная как “узкое место данных”, существенно замедляет работу даже самых мощных процессоров и графических ускорителей, поскольку время, затрачиваемое на перемещение информации, зачастую превышает время её обработки. Вследствие этого, увеличение вычислительной мощности не всегда приводит к пропорциональному увеличению производительности в задачах машинного обучения, особенно при работе с большими объемами данных, характерными для глубоких нейронных сетей. Преодоление данного ограничения требует разработки новых архитектур, минимизирующих необходимость в перемещении данных, например, путем интеграции памяти и вычислений в едином устройстве или использования методов приближенных вычислений, позволяющих снизить объем передаваемой информации.

Вычисления в Памяти: Новый Подход

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

Архитектуры вычислений в памяти (CIM) значительно ускоряют выполнение матричных операций, являющихся основой многих алгоритмов искусственного интеллекта, за счет использования присущего памяти параллелизма. В традиционных архитектурах данные перемещаются между памятью и процессором для выполнения операций, что создает узкое место и потребляет энергию. В CIM вычисления выполняются непосредственно в массиве памяти, что позволяет одновременно обрабатывать множество элементов матрицы. Этот параллелизм позволяет существенно снизить время выполнения операций, таких как умножение матриц A \times B = C, которые критически важны для задач машинного обучения, включая глубокие нейронные сети и обработку изображений. Эффективность CIM особенно заметна при обработке больших матриц, где выигрыш от параллелизма наиболее значителен.

Существуют два основных подхода к реализации вычислений в памяти (CIM): основанные на изменении заряда и на изменении тока. Подходы, использующие изменение заряда, как правило, обеспечивают более высокую точность вычислений, однако характеризуются меньшей скоростью и большей сложностью схемотехники. В свою очередь, CIM на основе изменения тока демонстрируют более высокую скорость вычислений и упрощенную схемотехнику, но при этом могут иметь ограничения по точности, что обусловлено влиянием шумов и нелинейностей в токовых цепях. Выбор между этими подходами определяется конкретными требованиями к приложению, учитывая компромисс между скоростью, точностью и сложностью реализации.

Предложенная архитектура T-eDRAM, включающая банки T-SRAM и MA-SRAM, оптимизирована для выполнения многобитных операций транспонирования матрицы <span class="katex-eq" data-katex-display="false">3 \times 3</span>, что позволяет эффективно реорганизовать элементы вдоль диагонали и реализовать 4-битные слова.
Предложенная архитектура T-eDRAM, включающая банки T-SRAM и MA-SRAM, оптимизирована для выполнения многобитных операций транспонирования матрицы 3 \times 3, что позволяет эффективно реорганизовать элементы вдоль диагонали и реализовать 4-битные слова.

Транспонирование Матриц: Оптимизация для Производительности

Транспонирование матриц является ключевой операцией во многих алгоритмах машинного обучения, в особенности в рекуррентных нейронных сетях. В рекуррентных сетях, таких как LSTM и GRU, транспонирование используется для эффективной обработки последовательностей данных и вычисления весов между слоями. Операция необходима для преобразования размерности данных, позволяя выполнять матричные умножения и другие вычисления, критичные для обучения и инференса моделей. От эффективности выполнения транспонирования напрямую зависит общая производительность и энергоэффективность этих алгоритмов, что делает оптимизацию данной операции приоритетной задачей при разработке аппаратных ускорителей для машинного обучения.

Специализированные ячейки памяти, такие как Transpose SRAM и Transpose eDRAM, позволяют эффективно выполнять операцию транспонирования матриц непосредственно в памяти (in-memory transposition). В отличие от традиционных методов, требующих перемещения данных между памятью и вычислительными блоками, эти конструкции обеспечивают перестановку битов данных внутри самой ячейки памяти. Это значительно снижает энергопотребление и задержки, связанные с передачей данных, что критически важно для приложений машинного обучения, особенно для рекуррентных нейронных сетей, где транспонирование матриц является распространенной операцией. Реализация данной технологии в 3D-интегрированной архитектуре SRAM-eDRAM позволяет достичь высокой производительности и энергоэффективности при выполнении операций транспонирования.

Представленная работа демонстрирует архитектуру CIM (Compute-In-Memory) с 3D-интеграцией SRAM и eDRAM, способную выполнять операцию транспонирования матриц, поэлементное умножение, сложение и стандартное скалярное произведение. Достигнутая производительность для транспонирования матриц составляет 12.77 GOPS/W, а для арифметических операций — 436.61 GOPS/W. Данная архитектура позволяет эффективно выполнять матричные вычисления непосредственно в памяти, снижая энергопотребление и увеличивая скорость обработки данных.

Операция транспонирования матрицы размером 32×32 выполняется с задержкой 264 нс и потреблением энергии 320,55 нДж. Данные показатели получены в результате тестирования 3D-интегрированной архитектуры SRAM-eDRAM CIM, предназначенной для выполнения операций транспонирования, поэлементного умножения, сложения и стандартного скалярного произведения. Оптимизация задержки и энергопотребления достигается за счет реализации специализированных схем доступа к памяти и параллельного выполнения операций.

Представленные схемы битовых ячеек памяти используют различные подходы: транспонирование для <span class="katex-eq" data-katex-display="false">T-SRAM</span> и <span class="katex-eq" data-katex-display="false">T-eDRAM</span>, а также умножение и сложение для <span class="katex-eq" data-katex-display="false">MA-SRAM</span> и <span class="katex-eq" data-katex-display="false">MA-eDRAM</span>.
Представленные схемы битовых ячеек памяти используют различные подходы: транспонирование для T-SRAM и T-eDRAM, а также умножение и сложение для MA-SRAM и MA-eDRAM.

Влияние на Последовательный AI: RNN и За Его Пределами

Рекуррентные нейронные сети, включая варианты с долгой краткосрочной памятью (LSTM) и управляемые рекуррентные блоки (GRU), в своей основе полагаются на интенсивные операции матричного умножения и накопления. Эти вычисления, необходимые для обработки последовательных данных, определяют скорость и энергоэффективность всей сети. Каждая ячейка сети, обрабатывая входные данные, выполняет множество операций умножения и сложения над матрицами весов и входными векторами, а затем накапливает результаты для формирования выходных данных. Именно эта повторяющаяся необходимость в матричных операциях делает оптимизацию этих вычислений критически важной для повышения производительности и снижения энергопотребления рекуррентных нейронных сетей в таких областях, как обработка естественного языка и анализ временных рядов.

Интеграция оптимизированных архитектур вычислений в памяти (CIM) позволяет значительно ускорить работу рекуррентных нейронных сетей, таких как LSTM и GRU, и существенно снизить их энергопотребление. Традиционные вычисления, требующие постоянного обмена данными между процессором и памятью, становятся узким местом. CIM-дизайны, напротив, выполняют вычисления непосредственно в памяти, минимизируя перемещение данных и, следовательно, задержки и энергозатраты. Это особенно важно для задач обработки естественного языка и анализа временных рядов, где рекуррентные сети обрабатывают последовательности данных, требующие множества матричных умножений и операций накопления. Благодаря CIM, подобные сети способны обрабатывать большие объемы информации в режиме реального времени, открывая возможности для более эффективных и энергосберегающих приложений искусственного интеллекта.

Комбинация вычислений в памяти и специализированных битовых ячеек открывает новые возможности для развертывания сложных моделей искусственного интеллекта на периферийных устройствах с ограниченным энергопотреблением. Традиционные архитектуры требуют постоянной передачи данных между процессором и памятью, что создает узкое место и значительно увеличивает энергозатраты. Вместо этого, вычисления в памяти позволяют выполнять операции непосредственно внутри самой памяти, минимизируя перемещение данных и снижая потребление энергии. Специализированные битовые ячейки, оптимизированные для операций, необходимых в нейронных сетях, таких как умножение матриц, еще больше повышают эффективность. Это особенно важно для периферийных устройств, где ресурсы ограничены, и требуется высокая производительность и низкое энергопотребление для таких задач, как обработка естественного языка или анализ временных рядов, позволяя создавать интеллектуальные устройства, работающие автономно и эффективно.

Предложенные подмассивы MA-SRAM и MA-eDRAM, поддерживающие 4- и 8-битные слова соответственно, а также реализованная на основе ячеек MA-SRAM цифрово-аналоговая схема и 8-битная архитектура MA-eDRAM на основе LFSR позволяют выполнять аналоговое умножение с последующим аналого-цифровым преобразованием.
Предложенные подмассивы MA-SRAM и MA-eDRAM, поддерживающие 4- и 8-битные слова соответственно, а также реализованная на основе ячеек MA-SRAM цифрово-аналоговая схема и 8-битная архитектура MA-eDRAM на основе LFSR позволяют выполнять аналоговое умножение с последующим аналого-цифровым преобразованием.

Будущее Масштабирование и Интеграция

Для решения задач, связанных с постоянно усложняющимися рабочими нагрузками искусственного интеллекта, необходимо дальнейшее масштабирование массивов вычислительных устройств в памяти (CIM). Простое увеличение количества элементов массива, однако, сталкивается с ограничениями по площади и энергопотреблению. В связи с этим, ключевым направлением развития является внедрение инновационных технологий трехмерной интеграции. Такой подход позволяет укладывать массивы CIM друг над другом, значительно увеличивая плотность вычислений без пропорционального увеличения занимаемой площади. Развитие трехмерных архитектур CIM не только повышает производительность, но и способствует снижению энергопотребления за счет сокращения длины соединений между вычислительными элементами, что открывает возможности для создания более эффективных и компактных систем искусственного интеллекта.

Развитие технологических процессов, в частности, использование FDSOI (Fully Depleted Silicon On Insulator) на 22-нанометровой платформе GlobalFoundries, открывает значительные возможности для повышения производительности и снижения энергопотребления вычислительных систем. Технология FDSOI, благодаря улучшенному управлению электростатикой и снижению паразитных емкостей, позволяет создавать транзисторы с более высокой скоростью переключения и меньшим энергопотреблением по сравнению с традиционными bulk-CMOS технологиями. Это особенно важно для сложных вычислительных задач, таких как нейронные сети, где энергоэффективность является критическим фактором. Внедрение FDSOI в архитектуры вычислений в памяти (CIM) позволяет не только ускорить обработку данных, но и значительно уменьшить общее энергопотребление системы, что делает ее перспективной для широкого спектра приложений, от мобильных устройств до центров обработки данных.

Интеграция вычислительной памяти (CIM) с энергонезависимой памятью открывает перспективы создания постоянно включенных, энергоэффективных AI-ускорителей для широкого спектра приложений. Такое сочетание позволяет существенно снизить энергопотребление, поскольку данные для вычислений хранятся непосредственно в памяти, избегая необходимости в постоянной передаче данных между процессором и памятью. Это особенно важно для мобильных устройств, носимой электроники и систем Интернета вещей, где продолжительное время работы от батареи является критическим параметром. Постоянно включенные AI-ускорители, основанные на данной архитектуре, смогут обеспечивать мгновенный ответ на запросы, что идеально подходит для задач, требующих обработки в реальном времени, таких как распознавание речи, анализ изображений и предиктивное обслуживание. Разработка подобных систем позволяет создавать интеллектуальные устройства, способные автономно функционировать и адаптироваться к изменяющимся условиям окружающей среды.

Интегрированный 8-битный линейно-обратно-связанный регистр сдвига (LFSR) аналого-цифровой преобразователь (АЦП) в составе архитектуры вычислений в памяти (CIM) продемонстрировал эффективность, достигнув показателя Effective Number of Bits (ENOB) равного 4.78. Этот результат подтверждает высокую точность обработки аналоговых сигналов непосредственно внутри массива CIM, что позволяет существенно снизить энергопотребление и задержки по сравнению с традиционными подходами, где обработка происходит вне чипа. Достигнутая точность открывает перспективы для применения данной архитектуры в задачах, требующих высокой чувствительности и разрешения, таких как обработка звука, медицинская диагностика и сенсорные сети.

Моделирование на технологии GF 22 нм FDSOI демонстрирует копирование элементов нижней диагонали в верхнюю в массиве T-SRAM во время операции транспонирования матрицы <span class="katex-eq" data-katex-display="false">4 \times 4</span>, где, например, <span class="katex-eq" data-katex-display="false">a_{21} = 0101</span> и <span class="katex-eq" data-katex-display="false">a_{41} = 0011</span>, при этом <span class="katex-eq" data-katex-display="false">a_{12}</span> изменяется с 1000 на 0101 (соответствует <span class="katex-eq" data-katex-display="false">a_{21}</span>), а <span class="katex-eq" data-katex-display="false">a_{14}</span> с 1100 на 0011 (соответствует <span class="katex-eq" data-katex-display="false">a_{41}</span>).
Моделирование на технологии GF 22 нм FDSOI демонстрирует копирование элементов нижней диагонали в верхнюю в массиве T-SRAM во время операции транспонирования матрицы 4 \times 4, где, например, a_{21} = 0101 и a_{41} = 0011, при этом a_{12} изменяется с 1000 на 0101 (соответствует a_{21}), а a_{14} с 1100 на 0011 (соответствует a_{41}).

Изучение архитектуры GEM3D CIM неизбежно приводит к мысли о хрупкости любой, даже самой элегантной теории. Авторы стремятся расширить возможности вычислений в памяти, предлагая решение для более широкого спектра матричных операций. Однако, как показывает практика, любое усложнение системы рано или поздно порождает новые точки отказа. Блез Паскаль заметил: «Все великие дела требуют времени». Здесь же, в погоне за производительностью, возникает вопрос: не слишком ли быстро мы отпускаем эти сложные системы в эксплуатацию, не успев толком оценить все риски? Ведь багтрекер, как дневник боли, неизбежно заполнится новыми строками, как только эта архитектура столкнется с реальными задачами.

Что дальше?

Представленная архитектура, безусловно, расширяет возможности вычислений в памяти, переходя от узкой специализации на матричном умножении к более универсальному набору операций. Однако, за каждым новым уровнем абстракции скрывается новая головная боль. Попытка уместить всё вычисление внутри памяти неизбежно приведёт к компромиссам между плотностью, энергопотреблением и, что самое важное, отладкой. Каждый транзистор — это потенциальная точка отказа, а 3D-интеграция лишь увеличивает экспоненту сложности.

Можно предположить, что дальнейшие исследования сосредоточатся на автоматизированном проектировании подобных систем. Ведь ручная оптимизация для каждого конкретного алгоритма — это утопия. Но автоматизация, в свою очередь, потребует создания новых языков описания аппаратного обеспечения, способных эффективно выражать специфику вычислений в памяти. А документация к этим языкам… документация — это миф, созданный менеджерами.

И, конечно, не стоит забывать о неизбежном: всё, что обещает упростить жизнь, добавит новый слой абстракции. В конечном итоге, CI — это храм, в котором мы молимся, чтобы ничего не сломалось. И, вероятно, сломается. Ведь продукшен всегда найдёт способ сломать элегантную теорию. Каждая «революционная» технология завтра станет техдолгом.


Оригинал статьи: https://arxiv.org/pdf/2604.13969.pdf

Связаться с автором: https://www.linkedin.com/in/avetisyan/

Смотрите также:

2026-04-16 21:51