此帐号已被封,内容无法查看 此帐号的内容被自由微信解封
文章于 2022年11月6日 被检测为删除。
查看原文
被微信屏蔽
其他

浅谈存算一体技术

技术大院 技术大院 2022-04-26

在冯诺依曼体系中,计算和存储是分开的,想要输出结果,就要完成三步走--存储、计算、以及两者之间通信,也就是数据搬运。数据存储与处理是分离的,存储器与处理器之间通过数据总线进行数据传输。

一方面,数据总线的有限带宽严重制约了处理器的性能与效率,同时,存储器与处理器之间存在严重性能不匹配问题。不管处理器运行的再快、性能再好,数据依然存储在存储器里,每次执行运算时,需要把数据从存储器经过数据总线搬移到处理器当中,数据处理完之后再搬回到存储器当中。

这就好比一个沙漏,沙漏两端分别代表存储器和处理器,沙子代表数据,连接沙漏两端的狭窄通道代表数据总线。因此存储器带宽在很大程度上限制了处理器的性能发挥,这称为存储墙挑战。

为了打破冯诺依曼计算架构瓶颈,降低数据搬移带来的开销,一种最直接的做法是增加数据总线带宽或者时钟频率,但必将带来更大的功耗与硬件成本开销,且其扩展性也严重受限。目前业界采用的主流方案是通过高速接口、光互联、3D堆叠、增加片上缓存等方式来实现高速高带宽数据通信,同时使存储器尽量靠近处理器,减小数据传输的距离。


性能

容量

瓶颈

SRAM(缓存)

连接计算模块

读写速度块

容量越大计算力越强

高端CPU,L3最高200M左右

L1、L2很小

面积越大导致成本增高,速度放慢

DRAM(内存)

速度比缓存慢百倍到千倍

目前单条16G

面积增大导致功耗增高,成本加大

数据泄露或破坏的风险也会增加

SSD(存储)

速度比内存慢了10倍以上

容量较大

读数据时间太长,万倍于计算的用时

目前主流AI芯片都基于冯诺伊曼计算架构,缺点是成本高,功耗高,且有90%以上的资源都消耗在数据的搬运上。随着AI算法的持续升级与AI应用的持续普及,AI领域迫切需要性能更强、功耗更低、成本更低的芯片,打造智能万物互联时代。因此,架构创新成为必经之路。

目前主要有两条技术路线:一是仍然基于老架构,使其老树开新花,以英伟达、AMD、Xilinx和Google等代表的芯片大厂基于冯诺伊曼计算架构继续发展GPU、FPGA和ASIC芯片;二是开发新架构,如存算一体芯片、软件定义硬件、类脑芯片等。

2020年,在未来论坛青创联盟线上学术研讨中,开展了AI+脑科学的主题讨论。清华大学的吴华强老师做了题目为“大脑启发的存算一体技术”的报告。在报告中吴教授介绍到:当思考未来计算的时候,量子计算、光计算是向物理找答案,类脑计算、存算一体是向生物找答案,也就是向大脑找答案。

新型存算一体架构则是将存储和计算有机地结合在一起,直接利用存储单元进行计算,极大地消除了数据搬移带来的开销 。旨在把传统以计算为中心的架构转变为以数据为中心的架构,其直接利用存储器进行数据处理,从而把数据存储与计算融合在同一个芯片当中,可以彻底消除冯诺依曼计算架构瓶颈,特别适用于深度学习神经网络这种大数据量大规模并行的应用场景。

简单来说,在传统计算机的设定里,存储模块是为计算服务的,因此设计上会考虑存储与计算的分离与优先级。但是如今,存储和计算不得不整体考虑,以最佳的配合方式为数据采集、传输和处理服务。这里面,存储与计算的再分配过程就会面临各种问题,而它们主要体现为存储墙、带宽墙和功耗墙问题。

以存储墙问题为例,因为计算与存储各自独立演进,且传统的观点认为计算系统性能受限于计算能力,因而过去几十年产业界在计算方面的投入巨大。有数据显示,过去二十年,处理器性能以每年大约55%的速度提升,内存性能的提升速度每年只有10%左右。结果长期下来,不均衡的发展速度造成了当前的存储速度严重滞后于处理器的计算速度,内存瓶颈导致高性能存储器难以发挥应有的功效,遭遇了所谓的存储墙问题。

为打破上述瓶颈,目前业内的努力方向:


原理

劣势

应用场景

近内计算(NMC)

near-memory computing

"捆绑"缓存+内存

选用3D封装,垂直通信

成本高

适配不同型号芯片

通用性差

AI

机器学习

数据中心

存储级内存(SCM)

storage class memory

常见的是3D Xpoint

基于相变存储技术

速度介于SSD和内存之间


规模应用场景

近存储计算(NSC)

SSD主要由闪存颗粒组成,需要控制器对其进行平均擦写管理,实现擦写均衡

将控制器添加计算功能或者用FPGA充当闪存控制器



存内计算(IMC)存算一体

in-memory computing

利用存储器的单元模拟特性做计算

基于欧姆定律,电压除以电阻进行计算,输出的结果就是电流,仅仅用一个晶体管就可以完成一次乘法计算过程

用模拟电路做计算
面临可靠性和密度问题

AI

深度学习

    其实存内计算的核心思想很简单,就是把带权重加乘计算的权重部分存在内存单元中,然后在内存的核心电路上做修改,从而让读出的过程就是输入数据和权重在模拟域做点乘的过程,相当于实现了输入的带权重累加,即卷积运算。而同时,由于卷积运算是深度学习算法中的核心组成部分,因此存内计算非常适合AI,对未来AI芯片的存算一体和算力突破都有帮助。


存算一体化当前面临的三大挑战:

  • 计算精度有限

    • 现有浮栅存储器并不适合用于计算

    • 本质上是模拟计算,精度会受到信噪比影响,通常上限8bit

    • 只能做定点数计算,难以实现高精度的浮点数计算

  • 应用落地场景边界条件限制较多

    • 仅适合原本就对存储需求较大的场景,不然引入内存计算反而增加内存成本

  • 生态不完善

    • 产业链上游支撑不足,下游应用不匹配

    • 没有成熟的专用EDA工具辅助设计和仿真验证

    • 流片后没有成熟的工具协助测试

    • 落地应用阶段没有专用的软件与之匹配

建议:

  • 聚力发展高带宽内存(HBM)、新型非易失性存储器(Flash、RRAM、PCM、MRAM)

  • 突破存算一体模拟信号误差、高效模拟、数字信号转换等关键技术

  • 引导高校。科研院所加强存算一体芯片原型设计、验证、流片加工等技术工艺储备

  • 加快产业化进程,推动应用













您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存