Подтверждено публикацией Chips and Cheese, но не первоисточником.
Chips and Cheese опубликовал анализ технологии LPDDR5X-PIM, которую Samsung представила на Hot Chips 2026. Материал разбирает перенос MAC-вычислений в память при сохранении совместимости со стандартным контроллером памяти.
LPDDR5X-PIM использует 16 банков и размещает отдельный PIM-блок у каждого банка. Вместе эти блоки задействуют внутреннюю пропускную способность 614 ГБ/с против 76,8 ГБ/с при обычном доступе к DRAM.
Вычисления остаются внутри стандартного протокола LPDDR5X: специальные адреса строк переключают однобанковый и многобанковый режимы. В многобанковом режиме команды распространяются на все 16 банков.
Обычные обращения к памяти нельзя безопасно выполнять одновременно с PIM-вычислениями даже в разных потоках, поскольку режимы PIM меняют смысл команд DRAM. Samsung рекомендует отображать PIM-память как некэшируемую, но это резко замедляет CPU и GPU.
Проверка утверждений:
- Chips and Cheese опубликовал анализ представленной Samsung на Hot Chips 2026 технологии LPDDR5X-PIM, который разбирает перенос MAC-вычислений в память при сохранении совместимости со стандартным контроллером памяти. (подтверждено только публикацией-переносчиком: доказательство; «At Hot Chips 2026, Samsung discusses their continued pursuit of in-memory compute with their PIM (Processing-in-Memory) push. They’re implementing MAC units within LPDDR5X chips, while preserving the chip’s ability to interface with a standard memory controller.»)
- LPDDR5X-PIM использует 16 банков и размещает отдельный PIM-блок у каждого банка; совместно блоки задействуют внутреннюю пропускную способность 614 ГБ/с против 76,8 ГБ/с для обычного доступа к DRAM. (подтверждено только публикацией-переносчиком: доказательство; «Samsung’s LPDDR5X-PIM is like a normal LPDDR5X-9600 chip with 16 banks, but places a PIM (Processing-in-Memory) block at each bank. These PIM blocks access their attached DRAM bank without being constrained by the chip’s external bus. Together, they can utilize the chip’s internal bandwidth across all 16 banks, which comes out to 614 GB/s. For comparison, regular DRAM accesses can hit two banks in parallel and max out at 76.8 GB/s.»)
- Внутри PIM-блока находятся дерево MAC, управляющая логика и регистровые файлы: 1024-битный файл инструкций на 64 инструкции по 16 бит, 4-Кбит файл исходных данных и 2-Кбит регистр масштабов. (подтверждено только публикацией-переносчиком: доказательство; «PIM blocks internally consist of a MAC tree with surrounding register files and control logic. A 1024-bit instruction register file holds up to 64 16-bit instructions. A 4 kbit source register file is meant for activation vectors, and supplies one source operand for the MAC array. Samsung expects software to load model weights into DRAM, so the attached DRAM block supplies the second operand. Model weights can be scaled before the MAC computation, with scale factors coming from a 2 kbit scale register.»)
- Массив MAC поддерживает низкоточные форматы INT8 и FP8, а при 4-битных весах пропускная способность удваивается и достигает 2,4 TOPS на корпус. (подтверждено только публикацией-переносчиком: доказательство; «The PIM block’s MAC array supports a variety of low precision formats. Numbers from Samsung’s presentation suggest each PIM block’s MAC array can sustain four INT8 or FP8 MAC operations per data clock, or eight per cycle when not counting the double data rate. Throughput doubles for 4-bit input weights, bringing package-wide compute throughput to 2.4 TOPS.»)
- Восемь чипов LPDDR5X вместе дали бы 9,6 INT8 TOPS, но конфигурация из восьми чипов по 16 ГБ означала бы 128 ГБ системной памяти и была бы дорогой. (подтверждено только публикацией-переносчиком: доказательство; «For example, eight LPDDR5X chips together would have 9.6 INT8 TOPS, which just about matches the NPU in Intel’s Meteor Lake . That would also be an expensive setup, because eight 16 GB LPDDR5X chips would correspond to 128 GB of system memory.»)
- Вычислительные возможности остаются внутри стандартного протокола LPDDR5X: специальные адреса строк переключают однобанковый и многобанковый режимы, причём второй распространяет команды на все 16 банков. (подтверждено только публикацией-переносчиком: доказательство; «One highlight of LPDDR5X-PIM is that it stays within the standard LPDDR5X protocol while exposing compute capabilities that aren’t part of the memory standard. Samsung achieves this by setting aside special row addresses, which act like MMIO addresses of sorts. Each channel has a pair of predefined rows for mode control. Activating one of those rows sets the chip to single-bank mode, while the other sets the chip to multi-bank mode. Single-bank is the regular mode, while multi-bank applies commands across all 16 banks to exploit the chip’s internal bandwidth.»)
- После загрузки регистров команды чтения запускают вычисления и накапливают результаты в векторных регистрах PIM, а команды записи переносят их обратно в банки DRAM. (подтверждено только публикацией-переносчиком: доказательство; «After priming PIM registers, software switches back into multi-bank mode and issues read commands. Instead of reading DRAM contents, these read commands initiate computations and get results accumulated into PIM vector register files. Then, write commands tell PIM blocks to write VRF contents back into the DRAM banks.»)
- Для устойчивости к переупорядочиванию запросов контроллером памяти Samsung применяет Address Align Mode, в котором индекс исходного регистра выводится из адреса столбца. (подтверждено только публикацией-переносчиком: доказательство; «Samsung gets around this with an Address Align Mode (AAM), which makes each instruction infer its source register index from the column address being accessed.»)
- Из-за изменения смысла DRAM-команд в режимах PIM обычные обращения к памяти нельзя безопасно выполнять одновременно с PIM-вычислениями даже в разных потоках: они могут запустить непреднамеренное вычисление или записать результат не по тому адресу. (подтверждено только публикацией-переносчиком: доказательство; «Because PIM modes change the meaning of DRAM access commands, software can’t use PIM and carry out regular memory accesses at the same time. That applies even across threads, because memory controllers and DRAM chips are oblivious to what thread an access is for. If a non-PIM thread reads from memory while another is using PIM, the first thread could cause an unintended computation and get incorrect results into the PIM VRFs. A write from the non-PIM thread could cause PIM blocks to write VRF data back to the wrong address.»)
- Samsung рекомендует отображать PIM-память как некэшируемую, поскольку кэш может поглотить обращения, предназначенные для запуска операций, однако это резко замедляет CPU и GPU. (подтверждено только публикацией-переносчиком: доказательство; «Caches can also break PIM behavior by absorbing accesses meant to trigger PIM operations. Samsung therefore recommends mapping PIM memory as uncacheable. That’s problematic because modern CPUs and GPUs rely heavily on caching to mitigate DRAM latency. Performance on uncacheable memory will be extremely slow because the CPU or GPU cores will spend far more time stalled waiting on memory.»)
- PIM-блок быстро обращается только к своему банку DRAM и не может напрямую обмениваться данными с другими PIM-блоками, поэтому межбанковые данные должен перемещать хост через обычные операции чтения и записи. (подтверждено только публикацией-переносчиком: доказательство; «Each PIM block only has fast access to its locally attached DRAM bank. All other input data has to be brought in through the DRAM chip’s comparatively constrained external interface. PIM blocks can’t directly exchange data with each other, so the host has to move data using regular DRAM reads and writes if one PIM block needs to use results generated by another.»)
Публикации:
оценка 68.3 · тип analysis · ревизия 1 · истории st-3218rs