让内存干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的功能等。
    刘轶表示,上述改进措施仍然属于冯·诺依曼结构,不能从根本上解决“存储墙”问题。相比之下,PIM技术在解决“存储墙”问题上更具优势。首先,它的计算模式更适合深度学习等新型计算模式;其次,PIM技术避免了冯·诺依曼结构处理器频繁访问内存这一问题,减少了数据传输次数,降低了功耗。
    具有发展潜力,但尚难取代通用处理器
    记者通过查阅资料发现,PIM技术应用最大的难点在于制造工艺。
    PIM技术需要利用先进的半导体工艺将处理器和存储器集成在同一芯片内,使之通过片上网络相互连接。但由于目前处理器与存储器的制造工艺不同,若要在处理器上实现存储器的功能,则可能会降低存储器的存储密度;若要在存储器上实现处理器的功能,则可能会影响处理器的运行速度。
    张军平指出,现阶段内存本身不具备计算功能,因此若想实现内存计算或PIM技术都需要对内存进行重新设计。
    “普林斯顿大学不是专业的芯片公司,其推出的新型芯片可能只是一种技术上的探索,离真正的产业化应用还有相当长的距离。”张军平认为,随着固态硬盘等技术的发展,如果硬盘读写速度足以媲美内存,内存与外存可能被集成为新型大容量高速存储器。未来最理想的情况是,CPU、GPU等多种处理器与大容量高速存储器实现一体化高度集成。
    刘轶强调,普林斯顿大学设计的这种处理器是一种专用处理器,它只针对深度学习应用,无法取代传统的通用处理器。
    “正如华为、苹果等公司推出的高端手机上大多配置了深度学习处理器,但只作为附属部件,核心的计算和处理仍然由通用处理器来完成,只是把特定的任务和计算模块交由深度学习处理器来进行计算,而且是在通用处理器的控制之下完成的。”刘轶说。
    “短期来看,PIM技术只能被用于特定类别的应用场景,难以取代通用处理器。”刘轶认为,从长远来看,如果半导体材料和器件技术无法取得突破,集成电路的摩尔定律将在不久的未来失效,即集成电路芯片内的晶体管数量将停止增长。这会对传统的计算机系统结构乃至计算机硬件和软件产业造成巨大的影响,由此也很可能引发重大的技术变革。当新的计算结构出现时,高度集成化的系统可能会对PIM技术有更多需求,但该技术能否成为主流仍有待观察。