IBM Research称,已经开发出了一种内存计算新方法,可以为微软和谷歌寻求的高性能和机器学习应用的硬件加速器提供答案。
在今天Nature Electronics期刊上发表的一篇论文中,IBM研究人员描述了这种新的“混合精度内存计算”方法。
IBM关注与传统计算体系结构的不同看法,在这种体系结构中,软件需要在单独的CPU和RAM单元之间进行数据传输。
据IBM称,这种被称为“冯诺依曼”的体系结构设计,为数据分析和机器学习应用制造了一个瓶颈,这些应用需要在处理单元和内存单元之间进行更大的数据传输。传输数据也是一个耗能的过程。
应对这一挑战,IBM给出的一种方法是模拟相变内存(PCM)芯片,该芯片目前还处于原型阶段,500万个纳米级PCM器件组成500×2000交叉阵列。
PCM的一个关键优势是可以处理大多数密集型数据处理,而无需将数据传输到CPU或GPU,这样以更低的能量开销实现更快速的处理。
IBM的PCM单元将作为CPU加速器,就像微软用于加速Bing和加强机器学习的FPGA芯片一样。
据IBM称,研究表明在某些情况下,其PCM芯片能够以模拟的方式进行操作,执行计算任务,并提供与4位FPGA存储器芯片相当的准确度,但能耗降低了80倍。
模拟PCM硬件并不适合高精度计算。所幸的是,数字型CPU和GPU是适合的,IBM认为混合架构可以实现更高性能、更高效率和更高精度的平衡。
这种设计将大部分处理留给内存,然后将较轻的负载交给CPU进行一系列的精度修正。
根据IBM苏黎世实验室的电气工程师、也是该论文的主要作者Manuel Le Gallo称,这种设计有助于云中的认知计算,有助于释放对高性能计算机的访问。
Le Gallo表示:
“凭借我们现在的精确度,我们可以将能耗降低到使用高精度GPU和CPU的1/6。”
“所以我们的想法是,为了应对模拟计算中的不精确性,我们将其与标准处理器结合起来。我们要做的是将大量计算任务转移到PCM中,但同时得到最终的结果是精确的。”
这种技术更适合于如数字图像识别等应用,其中误解少数像素并不会妨碍整体识别,此外还有一些医疗应用。
“你可以用低精度完成大量计算——以模拟的方式,PCM会非常节能——然后使用传统处理器来提高精度。”
对于只有1兆字节大小的IBM原型内存芯片,现在还处于初期阶段。为了适用于现代数据中心的规模化应用,它需要达到千兆字节的内存量级,分布在数万亿个PCM中。
尽管如此,IBM认为可以通过构建更大规模的PCM设备或使其中PCM并行运行来实现这一目标。
源自 至顶网
不要错过
领取专属 10元无门槛券
私享最新 技术干货