让内存干CPU的活儿 这项技术将芯片运行速度提升百倍
实习记者 于紫月
近日,美国普林斯顿大学研究人员推出了一款新型计算机芯片,其运行速度是传统芯片的百倍。有媒体称其采用了“内存计算”技术,使计算效率得到大幅提升。
这一神奇的技术到底是什么?它为何能显著提高芯片性能?科技日报记者就此采访了相关专家。
高度集成,把计算与存储功能合二为一
对于我们常用的计算机来说,存储器可分为内部存储器和外部存储器。内部存储器,即“内存”,是电脑的主存储器。它的存取速度快,但只能储存临时或少量的数据和程序。
外部存储器,通常被称为“外存”,它包括硬盘、软盘、光盘、U盘等,通常可永久存储大量数据,如操作系统、应用程序等。当运行某一程序时,处理器(CPU)会先从内存中读取数据,而后将一部分结果写入内存,并选择性地将另一部分结果写入外存进行永久保存。
也就是说,通常情况下,内存只能存储少量数据,计算机中大部分数据都“住”在外存。当CPU运行程序时就需要调取数据,若调取“住”在内存的数据,则用时较少;若调取“住”在外存的数据,则可能要费些周折。
因此科学家就想,能否把数据都存在内存里呢?于是,内存计算技术出现了。
“内存计算技术是伴随着大数据处理技术的兴起而兴盛起来的。在处理大数据过程中,由于数据量极大,处理数据时频繁访问硬盘这些外存会降低运算速度。随着大容量内存技术的兴起,专家开始提出在初始阶段就把数据全部加载到内存中,而后可直接把数据从内存中调取出来,再由处理器进行计算。这样可以省去外存与内存之间的数据调入/调出过程,从而大大提升计算速度。”北京航空航天大学计算机学院教授、中德联合软件研究所所长刘轶告诉科技日报记者。
“但普林斯顿大学研发团队采用的‘内存计算’技术与上述概念中所指的内存计算并不完全相同。”刘轶说,普林斯顿大学所采用的技术其实是PIM(Process in-memory),通常被翻译为“存内计算”“存算一体”或“计算存储一体化”。
“PIM技术是指直接在内存中处理数据,而不是把数据从内存读取到处理器中进行处理。”刘轶指出,PIM的技术概念在1990年就已被提出,虽然相关研究论文早已发表出来,但相关技术始终难以落地。
刘轶认为“难落地”的主要原因在于,PIM技术尚难以达到传统计算机冯·诺依曼结构的灵活性和通用性水平。“目前,学界所提出的PIM技术,只能做某些类别的应用,难以实现灵活编程。”他说。
可解决“存储墙”问题,大幅提升性能
在刘轶看来,PIM技术的重要价值在于,其能解决传统计算机结构存在的“存储墙”问题。传统计算机采用的冯·诺依曼结构,需要CPU从内存中取出指令并且执行,某些指令又需要从内存读取数据进行处理,再将结果写回内存。由于处理器所执行的程序和待处理的数据都被存在内存中,这样处理器在运行过程中需要频繁访问内存。随着微电子技术的发展,处理器性能的进步速度逐渐快于内存性能。
近30年来,处理器性能每年提升55%,而内存访问速度每年仅提升7%。这使得处理器的处理速度远远快于内存的读取速度,直接导致了“存储墙”的出现,严重拖慢了程序执行速度。
“这好比一个人消化能力很强,饭桌上也有很多食物,但这个人的嗓子眼儿很细,咽不下去。这就使得强大的消化能力‘无用武之地’,也限制了这个人吃东西的速度。”刘轶说。
“近年来深度学习等新型算法的兴起,对推倒‘存储墙’提出了更迫切的需求。”刘轶指出,新型算法访问内存的模式跟传统模式不太相同,刷脸、图片识别、机器翻译等新型算法往往以类似于人脑的方式实现对复杂数据的处理。由于这类算法涉及的神经元数量多、训练样本量大,这导致在通用计算机上进行深度学习计算的效率比较低。
为了提高效率,科研人员开发了各种加速部件和专用的深度学习处理器,前者的典型代表是图形处理器(GPU),后者的典型代表有谷歌公司的张量处理器(TPU)、国内的寒武纪处理器等。
“CPU、GPU等处理器通过总线与内存相连,总线的传输速度决定了计算的效率。”中国自动化学会混合智能专业委员会副主任、复旦大学计算机学院教授张军平告诉科技日报记者,人们正在尝试通过改进,减少数据在总线上的传输次数,提高计算效率。例如,科研人员让CPU具备部分的GPU功能,或使GPU具备一些CPU的功能等。
相关阅读
赞助商广告