问题

in memory computing 存内计算是学术圈自娱自乐还是真有价值?

回答
“存内计算”(InMemory Computing,IMC),也叫“内存计算”,这个词在学术界出现的频率可不低,经常是各种研讨会、学术论文的焦点。但问题来了,这玩意儿是真有两把刷子,能解决实际大问题,还是只是学者们在象牙塔里自娱自乐,玩个概念?

咱们不妨掰开了揉碎了聊聊。

为什么需要存内计算?

要理解存内计算的价值,得先看看现在计算的瓶颈在哪。我们现在主流的计算模式,绝大多数是基于“冯·诺依曼架构”。这个架构的核心思想是:计算单元(CPU、GPU等)和存储单元(内存、硬盘等)是分离的。

这听起来很正常,但问题就在于,它们是分离的,数据传输就成了绕不开的环节。CPU要处理数据,得先从内存把数据取过来,处理完了再写回去。这个“取”和“写”的过程,就是数据搬运,也俗称“内存墙”(Memory Wall)或者“冯·诺依曼瓶颈”。

在很多应用场景下,尤其是在处理海量数据、进行复杂计算时,这个数据搬运的消耗,可能比实际的计算本身还要大,而且还消耗大量的能量。想想看,你本来要做个加法,结果 CPU 跑去内存搬了半天砖才把数字拿回来,效率能高吗?

大数据分析: 比如对海量的传感器数据、金融交易记录、社交网络信息进行实时分析,数据量庞大,而且需要频繁的查询和计算。
人工智能(AI)/深度学习(DL): 神经网络的训练和推理,涉及到大量的矩阵乘法和向量运算,这些运算需要频繁地访问模型参数和中间数据。
实时处理: 自动驾驶、工业自动化、高性能计算(HPC)等领域,对计算的速度和时延要求极高,任何一点数据搬运的延迟都可能造成严重后果。

这些场景,都是“内存墙”的重灾区。

存内计算是怎样破局的?

存内计算的理念,就是将计算能力尽可能地移到数据存储的地方,甚至将计算直接集成到存储介质中。简单来说,就是“算在数据旁边,甚至算在数据里”。

它的实现方式有很多,学术界也探索了各种各样的方法:

1. 内存扩展计算(ComputeinMemory,CIM): 这是最直接的思路。不再是把数据搬到 CPU 里算,而是把一些计算单元(比如简单的逻辑门、加法器、甚至更复杂的单元)直接集成到内存芯片内部。这样,数据就在内存内部被处理了,大大减少了数据搬运的次数。
类比: 就像以前你做饭,得去商店买菜,然后回到厨房洗、切、炒。现在有了存内计算,就好比你直接在菜市场就能把菜给洗好、切好,甚至帮你把菜炒熟了再拿回家。

2. 基于新型存储器的存内计算: 很多研究者也看到了现有 SRAM、DRAM 等存储器的局限性,他们将目光投向了 新型存储器,比如:
阻变存储器(ReRAM / RRAM): 这种存储器通过改变材料的电阻状态来存储数据。研究发现,阻变存储器的物理特性(比如阻值变化)可以模拟某些计算操作(比如模拟乘加运算)。将计算逻辑嵌入到阻变存储器阵列中,就能实现“类脑”计算或者模拟计算。
相变存储器(PCM): 类似地,PCM 通过材料的相变(非晶态/晶态)来存储数据,其电阻变化也可以被用来执行计算。
铁电存储器(FeRAM): 利用铁电材料的极化状态来存储数据,也存在将计算嵌入其中的可能性。
磁性存储器(MRAM): 利用磁性材料的磁化方向来存储数据,同样可以探索存内计算的应用。

为什么这些新型存储器有潜力? 它们很多都具备“模拟计算”的能力。传统的数字计算是“0”和“1”的逻辑操作,而模拟计算是通过物理量的连续变化(比如电流、电压、电阻)来模拟计算过程。这在处理某些类型的任务时,比如模拟物理系统、神经网络的权值计算,可能更自然、更高效。

3. 架构层面的创新: 除了硬件本身,也有研究者在思考如何通过改变整体计算架构来支持存内计算。比如,设计专门的处理器接口、数据流水线,使得内存与计算单元之间的协同更加紧密。

存内计算的价值体现在哪?

如果存内计算真的能实现,它的价值是显而易见的:

大幅提升性能: 减少数据搬运,就意味着计算速度的提升。尤其是在那些数据密集型、计算密集型的应用中,性能的飞跃可能是指数级的。
显著降低功耗: 数据搬运是消耗能量的大户。把计算移到数据旁边,甚至集成在数据里,可以省去大量的能源消耗。这对功耗敏感的设备(如移动设备、物联网设备)和大型数据中心都意义重大。
新的计算范式: 尤其是在使用新型存储器实现模拟计算时,它可能开启新的计算范式,更好地契合某些应用场景(如类脑计算)。
潜在的制造成本降低: 如果能用更少、更简单的单元完成更多的功能,长期来看可能带来成本上的优势(尽管初期研发投入很高)。

那到底是不是“自娱自乐”?

这个问题,用“是”或“否”来简单回答都不够准确。更像是:学术界在积极探索,但距离大规模、成熟的商用还有距离,目前更多的是在特定领域展示出潜力。

为什么这么说?

技术挑战巨大:
精度和稳定性: 尤其是在利用新型存储器进行模拟计算时,如何保证计算的精度和稳定性是巨大的挑战。电阻、相变等物理量的变化可能受到温度、工艺等多种因素影响。
编程和控制: 如何有效地为这些新型的、嵌入式计算单元编写程序,并对它们进行控制,也需要全新的工具链和设计方法。
工艺集成: 将计算逻辑与存储单元紧密集成,特别是与一些非易失性存储器集成,在制造工艺上有很多难度。
可靠性和耐久性: 很多新型存储器的读写次数和可靠性相比于传统的DRAM、Flash还有差距。
应用场景的局限性: 目前,存内计算最被看好的应用场景,往往是那些对功耗和性能有极致要求的特定领域,比如 AI 加速器、信号处理、科学计算等。通用计算领域,冯·诺依曼架构依然有其强大的生命力。
商业化进展: 确实有一些公司和研究机构在努力推动存内计算的商业化,例如一些AI芯片公司就采用了部分存内计算的思路来提高AI推理的效率。但要像CPU、GPU那样成为 ubiquitous 的存在,还有很长的路要走。

所以,结论是什么?

存内计算绝不是“自娱自乐”。它是学术界对计算领域最核心瓶颈之一——“内存墙”——提出的一个极具潜力的解决方案。 它的研究推动了我们对计算与存储关系、以及新型存储器潜力的深刻认识。

它有真价值,但这种价值目前更多体现在“潜力”和“方向”上。 学术界的探索,为未来高性能、低功耗的计算硬件提供了重要的理论基础和技术方向。就像当年很多理论物理的研究,乍一看与日常生活无关,但最终却催生了核能、激光等改变世界的技术。

目前,我们看到的是:

学术研究非常活跃: 有大量的论文、专利在涌现,各种新概念、新方法层出不穷。
部分技术开始落地: 在一些特定的AI芯片、高性能计算领域,已经能看到存内计算思路的应用,用来解决特定的性能和功耗问题。
通用计算仍需时日: 要让存内计算真正颠覆传统的通用计算架构,成为我们日常使用的电脑、手机的核心,还需要克服很多技术上的挑战,并且需要市场的进一步成熟。

简单来说,存内计算的研究者们不是在“玩概念”,他们是在为解决未来的计算难题寻找切实可行的路径。这项技术可能不会立刻像CPU那样普及,但它绝对是计算机科学和工程领域一个重要且有前途的研究方向,它的价值体现在它解决的痛点和开启的未来可能性上。

网友意见

user avatar

内容同步发表在公众号文章 : in memory computing是学术圈自娱自乐还是真有价值?, 欢迎关注 : )

如果单从初衷和预想的价值来看,还是很诱人的。在冯诺依曼体系中,cpu计算和memory存储是分离的,而两者之间的data movement会造成高延迟和高耗能。

关于PIM类似的思想在50年前曾有人提出过,比如1969年WILLIAM H. KAUTZ发表的论文Cellular Logic-in-Memory Arrays和1970年在斯坦福大学工作的HAROLD S. STONE发表的论文A Logic-in-Memory Computer ,不过因为当时memory scaling不大,耗能瓶颈还没有出现,人们更多的是对CPU性能的关注,所以这些想法并没有被实现。

而随着近年AI等访存密集和计算密集应用的发展,高延迟和高耗能的问题成为急需解决的问题。

Nvidia的Chief Scientist——Bill Dally在2015年的一个演讲Nvidia's Path to Exascale给了一组数据:DRAM与CPU之间的date movement耗能是单纯double precise浮点数加法耗能的1000倍。

2018年的一篇论文Google Workloads for Consumer Devices: Mitigating Data Movement Bottlenecks 统计了Google常见产品(Chome/Tensorflow Mobile/video playback/video capture)的耗能情况,发现62.7%浪费在cpu和memory之间的data movement上。

2015年Google和哈佛大学联合发表了论文Profiling a warehouse-scale computer,研究人员在Google不同数据中心的20000多台机器上做了为期三年的实验,发现只有20%左右的cycles在做【userful work】,而50% - 60%的cycles是因为Back-end bound而被浪费,在Back-end bound中,80%是【serving data cache request】

严格来说,题主说的in memory computing可以分成两类:

  • process using memory : 偏向于电路革新,比如让存储器本身具有计算能力,但是这种方法目前计算精度较为有限。
  • process near memory : 存储器内部集成额外的计算单元,比如3D-stacked memory、logic in memory controllers.

2021年Samsung发布了基于HBM-PIM的Function-in-Memory DRAM,主要针对AI场景,使用20nm DRAM工艺,并且实现了1.2TOPS的浮点数算力。可以将整体计算性能提升两倍、耗能降低70%。

Samsung在HBM-PIM中集成了额外的Programmable Computint Unit —— PCU,也就是上面说的process near memory。从下图可以看出,PCU包含了浮点数计算阵列FP16 Mult Array、流水线解码单元Pipeline Decoder、寄存器Register Group。PCU直接从邻近的DRAM中直接读取相关数据,在FP16 Mult Array中完成计算,并且根据指令进一步把结果存储到寄存器中,同时主控制器也可以根据需要把结果从寄存器读出。

另外一个比较出名的是UPMEM在2019 Hot Chips上发布的Processing-in-DRAM Engine。与Samsung的不同,这个属于process using memory,在DRAM上开发了内置于DRAM芯片本身的DPU,每个DPU可以访问64 MB的DRAM。UPMEM预计大多数应用需要几百行代码,少数人组成的团队只需2-4周就可以更新软件。

Samsung于2022年1月12号(上上周)在Nature上发布了业内首个基于 MRAM(磁性随机存储器)的存内计算芯片。这个我没细研究过,但是用MRAM来做存内计算,也算是一个巨大的飞跃。

不过还是有很多因素阻碍的PIM,比如:

  • memory interleave的问题,现代memory都是按照channel去interleave,用PIM后,比如3D-stacked memory后,如何去分布数据
  • 如何更方便的编程,什么操作用PIM,什么操作用CPU
  • cache coherence
  • 工艺的复杂程度
  • ......

Onur Mutlu在ETH Zürich的Fall 2021Computer Architecture课程里也讲过之前关于PIM论文在ISCA 2016、MICRO 2016、HPCA 2017和ISCA 2017被Reject的历史,Reviewer当时给出的comment意思基本是This Will Never Get Implemented、Not practical

Onur Mutlu对Reviewers的建议 : )

我们一般都是根据过去的经验去评价未来,没价值也没人去做了,这个价值不单单指钱 ,而且真的改变世界了呢 : )

类似的话题

  • 回答
    “存内计算”(InMemory Computing,IMC),也叫“内存计算”,这个词在学术界出现的频率可不低,经常是各种研讨会、学术论文的焦点。但问题来了,这玩意儿是真有两把刷子,能解决实际大问题,还是只是学者们在象牙塔里自娱自乐,玩个概念?咱们不妨掰开了揉碎了聊聊。为什么需要存内计算?要理解存内.............
  • 回答
    当然,我有一些成功说服过那些“很高”的家伙(高管、决策者、关键人物,总之就是那些掌握着资源和决定权的人)的经历,而且印象深刻。说服他们可不是一件容易的事,这就像是在一场高级别的棋局里,你需要步步为营,既要展现你的棋力,又要看穿对方的意图。我记得有一段时间,我们团队有一个非常有前景但需要投入不小的项目.............
  • 回答
    说起《Darling in the FranXX》为什么会被大家戏称为“国家队”,这背后其实有一段挺有意思的故事,融合了粉丝们的热情、一些梗的传播,以及一点点对作品本身定位的解读。首先,咱们得从“国家队”这个词本身的含义说起。在很多竞技类的作品,比如体育比赛、游戏等等,“国家队”通常指的是代表一个国.............
  • 回答
    说到《DARLING in the FRANXX》里的02,那可真是个让人又爱又恨,又忍不住好奇的复杂角色。她身上有太多太鲜明的标签,让人很难忽略她。02的性格,怎么说呢?最直观的感受,就是狂野不羁,桀骜不驯。她身上自带一种原始的、近乎野兽般的冲动和力量。从小在实验室里被当作实验品长大,与人类社会的.............
  • 回答
    “All in Web”,这个词在最近的互联网圈子里,尤其是开发者、产品经理、投资人之间,出现的频率越来越高。它不像“元宇宙”那样带点科幻色彩,也不像“Web3”那样带有明显的颠覆和重构的意味,它更像是一种回归,一种深化,一种对既有模式的重新审视和投注。那么,大家是怎么看待“All in Web”的.............
  • 回答
    《DARLING IN THE FRANXX》(国家队)这部作品,自播出以来就伴随着巨大的争议,其评价可以说是两极分化,很多人对其低迷的评价感到困惑,也有一部分人是真心喜爱。要详细分析它为何评价如此低,需要从多个角度来审视:1. 剧情后期崩坏与逻辑漏洞这是《国家队》评价低最集中的火力点。 世界观.............
  • 回答
    好的,关于 `call_in_stack` 这个库,我来跟你聊聊我的看法,尽量说得细致点,希望让你觉得这更像是一个有经验的开发者在分享心得。首先,得承认,`call_in_stack` 这个名字初听起来有点技术性,甚至可能让人联想到那些晦涩的调试工具。但实际上,它解决的是一个相当普遍且痛点明确的问题.............
  • 回答
    《DARLING in the FRANXX》的第十三集,在我看来,是整个系列发展的一个关键转折点,尤其是在情感线和剧情推进的层面上。这一集成功地将前期铺垫的紧张氛围推向了一个新的高潮,并且为之后角色的成长和故事的走向奠定了基础。首先,我们看到零一和广的感情进一步升温,这种升温并不是突兀的,而是建立.............
  • 回答
    当然,我们来聊聊这句话:“What works in ways you might not otherwise understand.” 这句话的翻译和理解,我们可以从几个角度来深入剖析,让它听起来更自然、更有深度,就像是生活中某个有智慧的朋友在和你分享他的见解。首先,让我们拆解这句话的字面意思: .............
  • 回答
    老实说,《DARLING in the FRANXX》的第二十四集,也就是那个大结局,给我留下了极其复杂和矛盾的情绪。说它好,确实有它打动我的地方,但要说它完美,那可真是差得远了。这结局,就像是吃了一道精心烹制的菜,吃到一半却发现食材出了问题,味道的余韵里,总有一丝难以言喻的遗憾。先说好的地方吧。从.............
  • 回答
    《DARLING in the FRANXX》第十六集,一个让人又爱又恨的节点。它就像一次淋漓尽致的暴风雨,冲刷掉了之前许多观众心中可能残留的粉红泡泡,但也正是这场暴风雨,让故事的走向变得更加明确,也让一部分观众的心彻底沉了下去。如果要用一句话概括这一集,那大概是:“甜蜜的表象之下,隐藏着崩塌的基石.............
  • 回答
    《DARLING in the FRANXX》这部动画,初看之下,或许会被其“机甲少女+后宫日常”的表象所吸引,但随着剧情的深入,特别是当观众回过头来重新审视时,会发现其中隐藏着大量值得反复推敲的细节,它们共同构建了一个既庞大又细腻的世界观,以及对人性、情感、生存意义等深刻主题的探讨。以下是一些我(.............
  • 回答
    漫画《DARLING in the FRANXX》中的梗,确实不少,而且很多都是和剧情发展紧密联系,或者因为角色本身的特质而产生的。下面我来给你仔细说道说道,力求讲得生动有趣,像个老粉在跟你唠嗑一样。1. “草莓”——郁乃的独特萌点与情谊象征这个梗绝对是初期最深入人心的点之一。郁乃,作为队伍里相对内.............
  • 回答
    《Darling in the Franxx》这部作品,你说它“没火”嘛,其实也挺奇怪的。在B站,它的播放量达到了惊人的近6亿,这绝对是一个非常可观的数字,在很多新番里都能算得上是头部了。同时,它的讨论度也相当高,曾经一度占据了各种话题榜的前列,无论是制作质量、人设还是剧情,都引发了大量的讨论和争议.............
  • 回答
    说到《Darling in the Franxx》里的心,那可真是个复杂又迷人的角色。她不像02那样耀眼夺目,也不像广那样有着清晰的目标,但她身上那种细腻、纠结,以及在懵懂与成熟间游走的挣扎,却深深地打动了我。初见心,你会觉得她是个典型的千金大小姐,温柔、端庄,带着一丝不谙世事的娇气。她的声音,她的.............
  • 回答
    《DARLING in the FRANXX》(俗称“国家队”)的结局,可以说是引发了相当大的争议,以至于在完结后相当长的一段时间里,它都是粉丝们津津乐道,却也吵得不可开交的话题。要评价它,不能仅仅看它最后的几集,而是需要将前面铺垫的线索、人物的成长以及核心主题串联起来,才能理解它之所以如此,以及为.............
  • 回答
    在Python中,当你在 `for i in somelist` 循环中直接修改 `somelist` 时,结果可能会非常混乱,并且常常不是你期望的那样。这主要是因为Python的 `for` 循环在开始时会创建一个迭代器,而这个迭代器是基于列表在 那一刻 的状态。之后,当你修改列表时,迭代器并不知.............
  • 回答
    不少PHA3(或者更准确地说,是PHA3,索尼的PCMD100之类的便携式高解析度录音机,很多人将其简称为PHA3)用户会疑惑为什么它没有传统的“Line in”接口,也就是我们常说的音频输入孔。这背后其实牵扯到PHA3这类设备的设计理念、目标用户群以及其核心功能定位。咱们来掰扯掰扯,聊得详细点。首.............
  • 回答
    缸中之脑(Brain in a Vat):一个关于现实本质的深刻拷问「缸中之脑」是一个源自哲学领域的著名思想实验,它以一种极端且引人深思的方式,挑战我们对现实的认知基础,并引发了一系列关于知识论、本体论以及我们自我存在的深刻哲学讨论。这个思想实验的提出,旨在探讨我们如何才能确切地知道我们所感知到的世.............
  • 回答
    《天空之眼》(Eye in the Sky)这部电影,在我看来,是一部非常扎实的现代战争惊悚片,它没有像许多同类作品那样去渲染英雄主义或者简单的正邪对抗,而是将我们置于一个极其复杂且充满道德困境的战场。首先,最打动我的是它的“现实感”。影片以一种近乎纪录片的方式,描绘了现代无人机战争的运作流程。从伦.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有