当前位置:首页 > 生活

内存计算是什么

2023-10-11 19:14:01人气:77

资料来源:半导体工业观察(身份证号:icbank)和布瑞恩莫耶从“电子期刊”中汇编的内容。谢谢你。

记忆可以看作是一种“存取”然后成为产品的功能。将权重存储在内存中并使用激活作为输入可以节省数据移动和功耗。而实现这一点的方法有很多种,比如rram,闪存或者sram都可以用来操作,而另一种涉及到dram的方法则完全不同。

在赢得人工智能(ai)的战斗中,很多公司都在努力打造最好的机器学习(ml)引擎。这意味着以最低的功耗进行最快的推理,最低的功耗意味着想出如何避免撞上存储墙。换句话说,大量的精力花在移动所有必要的数据上。这里,我们讨论的是如何移动数十亿条数据。

我们几周前看到了其中一些,他们采用了新的推理架构,专注于内存带宽和局部性,试图以更快的速度和更低的功耗移动更少的数据。但是我们故意推迟讨论解决这个问题的另一种方法:内存计算。

在更传统的体系结构中,有一些用于张量数学的乘法-累加(mac)电路,尤其是矩阵乘法(其首字母缩写为gemm,用于“一般矩阵乘法”)。这些架构试图以适应将重量和激活移动到适当位置的方式来排列macs。激活由先前的神经网络层计算(第一层使用实际的网络输入作为“激活”),权重存储在某个地方。乘法通常涉及激活和权重,因此两者都必须移动到乘法引擎。这是问题的关键。

内存计算利用了一个非常方便的内存事实。因此,如果权重存储在内存中,您可以通过激活访问内存,从而获得乘法和累加。与实际存储器的唯一区别是,所有字线都在存储器内计算中一次连接,而不是解码输入,只能获得一条字线。

我们在这里做的是进入模拟域,将存储单元作为模拟单元而不是数字单元来对待,以降低功耗。我们已经看到了一种在推理引擎前端使用模拟的方法。内存计算在内存中使用它。所以我们取数字数据,用dac转换成模拟值,用这些模拟值驱动有模拟内容的存储器,得到模拟位线输出,再用adc把结果转换回数字格式。

我们将深入研究不同技术的细节,但鉴于要讨论的所有内容,我们将省略许多细节。

和rram一起做

我们在今年早些时候对此进行了一般性的讨论,然后我们更具体地研究了如何在rram存储器或使用铁电场效应晶体管实现这一点。尽管rram法是执行这一操作最常用的方法,部分原因是将欧姆定律应用于一系列电阻很容易理解,但依赖rram法仍然存在问题。

正如那些研究替代方案的人所说,在商业化之前,rram仍然需要开发工作。编程和电阻之间的关系是非线性的,这要求必须做更多的工作来制造商业上可行的rram内存计算电路。换句话说,“这是一个好主意,但是当你准备好的时候请让我们知道。”我对业务发展一无所知(相对于业务前期研究),但如果你坚信这是可以实现的,请发表你的看法。

在这种情况下,如果我们还没有准备好使用电阻阵列,我们该怎么办?

用flash做

我听说的下一个方法是用闪光灯代替rram。特别地,或非门闪存具有更传统的字线/位线结构。从一开始我就被这个评论吸引住了,用电容代替电阻的方法。乘积算法在使用欧姆定律以外的方法时是否同样有效?

实际上,它既有电阻性又有电容性。通常,存储单元是打开或关闭的晶体管。然而,如果它是部分导电的,它可以用作电阻器,并且电阻取决于存储单元(电容器)的浮栅上的电荷量。当一直运行时,电池将达到其最大容量。在这个过程中,它完全不导电,但可以部分编程。微芯片提供了下图来说明编程状态之间电阻的线性特性。

( 图片来自于microchip technology)

对于熟悉flash的人来说,这听起来可能和你之前看到的差不多。这就像闪存上的mlc或tlc存储单元。您可能还记得,有两种方法可以在一个闪存位中存储更多信息。mlc或“多级单元”可以存储2位。这意味着编程可以在四个不同的级别完成,包括全开和全关。tlc代表“三层单元”,用八层存储3位。

嗯,原则上来说,扩展到“国际法委员会”并不难(恕我冒昧)。换句话说,它是一个连续的范围,而不是4或8个离散的阶段。具体来说,没有人使用或提议使用ilc名称。希望你能理解。此外,在实践中,存储单元中的级数可能不会比薄层色谱单元中使用的级数高很多。因此,整个连续体可以帮助我们理解正在发生的事情,但当前的现实仍然相对有限。

当然,如果我们研究基础物理,就不能成为一个无限连续的单位。这是因为栅极值是离散的:它由浮动栅极(或电荷陷阱)中的电子数量决定。你不能有分数电子,所以你可以有效地量化电池电阻值的范围。但是,实际上,电子很多——而且在编程过程中没有计算在内,所以它们的数目是正负的。

如果人们想使用一个小的、尖端的闪存单元,电子的数量将变得很重要。然而,您仍然可以通过使用旧技术和使用比通常更大的电池来容纳更多的电子(因为存储密度不是这里的主要目标),来处理大量的电子(正和负)。

这使得使用这种方法成为一个挑战。你无法精确控制电子的数量。此外,对任何数字的响应都会随着过程和温度以及导致变化的所有变量而变化。但是像上面这样漂亮干净的图形在实践中会变得更加混乱。

有两家公司走这条路。微芯片拥有他们的membrain阵列(你必须承认一个非常聪明的名字),这是因为他们收购了sst,而mythic是一家专门从事推理引擎的初创公司,它使用带闪存的内存计算。(mythic的闪存来自其他许可,但他们拒绝透露来自谁。两家公司都表示,他们正在使用广泛的校准技术(我不敢透露细节)来应对这一变化。

启动时校准(甚至在测试期间)是一回事,但闪存单元会随着时间的推移失去电子。这就是闪存具有数据保持特性的原因。电子会到处跑,这就带来了一个有趣的话题:这种类型的内存阵列上的数据保持和数据持久化的意义是什么?

从应用角度来说,要看是用于云计算还是边缘推理机。在边缘,它可能在设备的整个生命周期中执行一些固定的推理功能。因此,如果有足够的阵列,您将第一次加载权重,并且由于闪存是非易失性的,您不需要对其进行编程(除非您在现场更新)。虽然您仍然需要移动激活,但您不需要移动权重,它们将永久存储在数组中。

在极端条件下,这将表明耐用性(在累积损坏将电子泄漏加速到不可接受的水平之前,设备可以编程的次数)无关紧要,只能编程一次。

相比之下,在云应用中,设备很可能作为通用计算资源共享,因此需要为每个新应用重新编程。这意味着在云中,耐力变得更加重要。神话声称有一个10k写周期,并观察到它将持续10年以上,即使你每天重新编程它。微芯片也有望承受1k-10k循环。

然后一般数据保留。标准闪存单元显示,数字设备提供的抗干扰能力优于模拟设备。你可以在一个简单的单位中失去(或得到)一些电子并不重要。单元格仍将读取相同的内容。但如果这种情况持续下去,永远不会结束。

如果我们给它设置一个模拟值,在cell中使用一个模拟值,那么理论上,每个电子都很重要。然而,如果有足够的电迁移,您需要刷新存储单元,或者……您需要以某种方式补偿单元变化的行为,因为今天相同的模拟输入将产生与一年前不同的结果。

校准电路还可以处理一些老化问题。但是,对于数据保留,mythic说他们确实执行了”.定期更新存储在闪存中的重量值”。这将使持久性成为主要的磨损机制,而不是数据保留。微芯片显示其数据保留时间为tbd,但该设备可能会每季度或每年重新编程,以恢复该单元。

这些家伙还在数模转换器和模数转换器上花费大量精力。他们需要大量的adc和dac(官方说他们有27000个adc),而且必须是高质量的,才能把信噪比(snr)保持在能促进精确推理的范围内,这是很多设计工作的重点。mythic声称他们提供了一个新颖的adc;微芯片可以共享它们的模数转换器,以减少所需的数量。虽然模数转换器确实会消耗能量,但它们都声称它们的使用大大降低了整体系统功耗。

微芯片的完整阵列结构如下所示。

微芯片将其membrain技术作为知识产权出售,供其他人集成到其推理芯片中。另一方面,mythic也在自己的soc中使用它们。它们使用的术语略有不同——内存计算和模拟计算——但它们是一回事。今天,我们对它们的关注将止于存储阵列;我们将在以后的文章中介绍他们的完整架构。

我在这里简单介绍一下我的想法,想知道其他的细胞技术是否也可以这样使用。如果你能熔化/结晶pcram单元,它会工作吗?鉴于磁畴的严格磁极方向,mram可能听起来不可行,但事实并非如此简单。编程的性质取决于对齐偶极子的数量和角度,可能不是100%平行,也可能是反平行。因此,理想情况下,它也可以使用模拟值。我和mram的行业专家进行了简短的交谈,他说理论上这是可能的,但还没有被证明是可行的。具体来说,我没有听说过任何涉及这些技术的项目。

用静态随机存储器来做

下一个想法来自普林斯顿大学在hot chips的讲座。他们使用静态随机存取存储器阵列。这似乎很.令人惊讶,因为他们是多变的。根据定义,静态随机存取存储器是一个双稳态单元。所以不能处于中间状态。这个应该怎么处理?

普林斯顿团队一直被我们一直在讨论的信噪比问题所激励。鉴于上图,他们各有各的看法,说明变化对存储单元可能产生的影响。他们声称这很难处理,需要对此进行校正的数模转换器和模数转换器最终将在面积和功耗方面压倒阵列。

鉴于与闪存在这个问题上的讨论,不清楚事情是否像普林斯顿大学团队所建议的那样糟糕,但我没有可论证的论点来证明,如果闪存方法使用的功率或面积大于静态随机存取存储器单元,它将被完全使用。

普林斯顿大学的工作归结为如何模拟的问题。到目前为止,我们采用的方法是记忆前模拟,记忆后再进行数字处理。那不是普林斯顿的工作。它们保持数字状态,直到位线读取。这有一些含义:

他们不只是用一个位线来计算。由于该单元仍然是一个数字值,它需要几条位线来进行计算。位线可以分开,不同的组可以不同地相乘。这在下面的高级图像中有说明。

它们一次输入八个输入,因此它们及时对输入向量进行切片,并执行几次连续乘法以获得最终结果。

在电容器上沉积位线电荷;当准备好读取时,电荷被读出并发送到adc,以转换回数字域。

它们的基本单元结构如下所示:

这些电容器可能会导致芯片尺寸问题,但他们表示可以使用电池上方的金属。当然,现在完整的单元比标准的6t sram单元大80%(即使没有电容)(与闪存相比),但他们说,他们的整体电路仍然比标准数字实现所需的电路小得多。并且没有完全模拟实现的挑战。因为他们的激进

阵列操作仍然是数字形式,因此对噪声和变化不太敏感,这意味着它们的adc可以更简单,功耗更低。

用.做.…dram?

对于最后的讨论,我们转向一个完全不同于在hotmems上引入的upmem的解决方案。从动态随机存取存储器芯片的角度来看,这可以被视为内存中的计算。但从内存阵列的角度来看,其实是近内存计算。

想法是这样的:如果不使用大量的功率获取dram内容,并以某种方式并入cpu或其他计算结构,直接在dram管芯上做计算?

upmem就是这么做的。他们使用动态随机存取存储器技术在动态随机存取存储器芯片上构建一个简单的处理器,这不是最初的意图。他们必须在架构上做出一些让步,这不会与至强芯片竞争,但话说回来,它不需要针对他们正在做的事情。他们称架构和芯片为“内存处理”或pim。

他们不是把数据带入计算,而是把计算带入数据。运行时由主cpu执行,在dram芯片本身本地执行。然后,不需要将数据移动到除了dram芯片以外的任何地方,只需将计算结果发回主机系统即可。此外,由于最大似然计算通常涉及大量的约简,因此结果应该是用于计算的数据较少。

虽然这样做确实需要对动态随机存取存储器设计本身进行一些小的改变,但它们并没有改变制造过程。现在,一个标准的动态随机存取存储器模块将为分布式计算提供许多机会。

这有什么坏处吗?用这个函数写一个完整的程序是非常复杂的。他们的工具包和流程就是为了解决这个问题而设计的。因此,除了“未正常完成”(假设已经正确执行并且能够可靠提供)之外,我看不到任何危险信号。

他们希望使用pim卸载的服务器消耗的功率是连接到没有pim的动态随机存取存储器模块的标准服务器的两倍。然而,在20倍的吞吐量下,它仍然为他们提供了10倍的能效优势。另一个例子是“在本地花费更多,在全球花费更少”。

他们还建议,这种方法可以帮助防御侧通道安全攻击。这是因为原来包含在一个或多个cpu中的一组计算线程流向了dram。现在,您需要攻击所有的动态随机存取存储器,并找出哪个线程正在以某种方式进行,以便从攻击数据中获得任何意义。他们预计这将是一项艰巨的任务。

内存计算是什么(内存存储容量计算方式)

扩展阅读

微信内存满了怎么清理(微信一直弹出储存空间不足)

微信每天都在用,每天几百条消息,各种表情包,图片,文件,视频。微信的记忆急需。我该怎么办?我们来看看微信怎么减肥。

一、数据清理

为了减轻微信的负担,我们必须清理垃圾。首先,我们来看看如何清理数据。

1.清理储存空间

我们可以通过“设置-通用-清空微信存储空间”来清空微信缓存。

2.清空聊天记录

除了在主页上删除单个聊天记录,还可以直接在设置-聊天-清除聊天记录中清除所有个人和群组聊天记录。

但是,如果有一些重要的聊天内容被意外删除,应该通过手机数据恢复向导等回复工具进行检索。因此,在使用此操作之前要小心。

二、数据迁移

因此,在上述情况下,有必要对重要数据进行备份和迁移。

1.微信聊天记录迁移

在“i-设置-聊天”中找到“聊天记录迁移”功能,进行手机之间的数据迁移。

首先通过同一个wifi连接两个设备,点击“选择聊天记录”,进入“聊天列表”界面,查看需要转移的联系方式。

然后,通过扫描二维码将数据迁移到另一部手机上。

2.微信备份web版

也可以通过电脑版微信将聊天内容备份到电脑上。

在网络版微信中,打开“设置”功能,选择“聊天备份”。

然后在手机上授权,就可以备份了。备份后,您可以删除手机的内容。

三、关闭微信辅助功能

毕竟常规的清理方式并不能根治问题,可以尝试从根源入手,为微信腾出更多空间。因此,可以关闭一些不需要使用的辅助功能。

1.关闭语音记事本

“语音记事本”其实是笔记本功能。现在手机一般都有专门的笔记本,可以关机。

2.靠近附近的人

这个功能需要开启定位,收发其他用户信息,占用大量内存。在“功能”选项中找到它并禁用它。

3.关闭自动保存

此功能会自动将我们拍摄的图片和视频保存到系统相册中。可以通过“设置-常规-照片和视频”关闭。

4.关闭游戏

如果你没有玩微信游戏的朋友,你可以关闭他们,停止接收消息。

5.关闭微信微信官方账号

对于那些经常推送消息的微信官方账号,应该定期清理或者直接取用。否则也会占用内存。

四、重装微信

微信用久了会产生很多垃圾。所以,如果你的微信经常被清理,还卡着,建议你可以尝试卸载重新安装。

如何深度清理电脑内存(电脑太卡如何彻底清理)

很多人的电脑用久了会越来越卡。今天我教你三种清理内存的方法,让你的电脑瞬间增加几十g的内存,不要让速度限制了你的自由。

首先,磁盘清洗

1.首先打开我的电脑,找到c盘,右键选择【属性】,进入c盘属性窗口,点击【常规】中的【磁盘清理】。

2.系统扫描完文件后,会进入c盘的清盘窗口。暂时不要点击ok。首先单击[清除系统文件]。过一会儿,自动清洗就完成了。

3.然后,在当前窗口中,检查下面所有要删除的文件,然后单击确定。这时电脑会在后台为你清理,清理完毕自动退出窗口。

第二,清理休眠文件

1.按键盘上的快捷键[win r]调出运行窗口,在运行框中输入“cmd”,点击[确定]。

2.这时进入管理员窗口,在后面输入“powercfg -h off”,最后按回车键,完成后记得重启电脑。

第三,清除日志

1.在win10系统中,单击计算机左下角的搜索框,在其中输入[事件查看器],然后单击打开。

2.在弹出窗口中,双击打开窗口日志,右键单击应用程序,然后单击清除日志。按照这个方法清理下面的安全和系统。

如果你的电脑卡了,c盘占用内存太多,试试上面的方法,可以大大缓解。

ddr5内存上市时间(等ddr5还是买ddr4)

dram内存价格连续三年上涨。目前乐观预测是今年年底价格见顶,2019年开始下跌,但8gb ddr4未来价格不会回落到200元的水平,因为内存厂商很快就会转向新一代ddr5内存。至于ddr5内存,我们都知道它的频率可以达到6400mbps,dram的核心容量会提高到16gb甚至32gb,容量更大,带宽更高。美光预计将于2019年底开始生产ddr5内存,采用成熟的18纳米工艺,核心容量为16gb。但是ddr5内存大概要到2023年才会在台式电脑上普及。

据cadence新闻报道,cadence的马克格林伯格和美光的瑞安巴克斯特在tsmc的oip生态系统论坛上谈论了ddr5面临的挑战和解决方案。从ddr3升级到ddr4内存的主要动力来自客户端和移动设备,而ddr5内存发展的动力是高带宽需求,尤其是服务器需要更高带宽的内存,不可否认跟不上多核处理器的增长。

关于ddr5内存,新一代标准提高了数据频率、总线效率、刷新方案和16gb核心容量支持,内存带宽大幅提升。ddr4 3200到ddr5 3200的内存带宽提高到1.36倍,ddr4 3200到ddr5 4800的内存带宽提高到1.87倍。

美光的计划是明年晚些时候开始生产,使用目前成熟的18纳米技术,核心容量为16gb,未来将使用更新的技术,但技术发展到10-12纳米后,许多问题需要解决。

不同市场内存芯片的发展路线

ddr5内存明年出不是新闻。本文最有意思的其实是ddr5存储芯片的路线图。虽然cadence专栏作家自己做的,但他认为ddr5主要用于服务器/数据中心、台式机/笔记本和消费者/行业三个市场,其中移动设备包含在最终的消费者/工业市场中,其中服务器/数据中心市场最先起步,2019年开始生产,2021年产能最大化。

桌面市场量产将于2020年开始,2023年产能最大化。设计工作将于今年开始,而消费/工业市场将于一年后开始。2021年开始量产,2024年产能最大化,明年开始设计工作。

注意表中进程节点预测的最后一部分不是针对dram内存的,而是针对dram物理ip的。cadence有自己的ddr5 ip服务。已经演示了ddr5物理层芯片,采用7纳米工艺,速率为4400mbps,与micron合作。

按照这个进度,台式电脑使用ddr5内存需要很长时间。2020年才开始量产,2023年产能最大化。cadence早前预测ddr5内存的份额在2020年会翻倍,但不会超过主流市场的10%。2021年份额将增至15%,2022年将达到25%。到那时,ddr4内存的份额将降至15%

相关文章
热门文章

孕妇堂 苏ICP备2022030739号-2 苏公网安备 32011502011778号