内存计算技术(In-memory computing)已经开发了一段时间,然而,目前还没有发布与该计算架构兼容的软件。据Techxplore报道称,以色列理工学院的研究人员已经开发出了一种能够与内存处理设计协同工作的、特别是能与Python代码兼容的软件。研究人员声称,他们开发了一种构建编程语言的理论,专门为内存计算设计。该软件能够将Python命令转换为机器代码,并直接在计算机内存中执行。
这种新型计算语言被称为PyPIM(Python Processing-in-Memory)。就像DXVK(DirectX到Vulkan的转换层)这样的API转换层一样。PyPIM是一个转换层,将传统的Python代码转换为可以在这种新型计算方法上运行的代码。因此,Python程序员可以像在传统计算机上编写代码一样编程,而不需要为内存计算调整编写风格。
Techxplore指出,软件是内存计算机处理中至关重要的一个方面,但直到现在都还未被充分探索。为传统计算机编写的计算代码自20世纪40年代以来“几乎没有变化”。来自安德鲁和埃尔娜·维特比电气与计算机工程学院的教授沙哈尔·克瓦廷斯基(Shahar Kvatinsky)表示,为内存计算编写代码与传统的计算方式截然不同,以至于“计算机科学中的一些现有构建模块无法使用……”。
如果没有像PyPIM这样的转换层,开发兼容处理器内存支持的应用程序将会非常困难。因为需要重写底层机器代码,以适应在内存中处理部分计算,其余部分在CPU上处理。
内存计算是一种新的计算方式,旨在解决内存延迟问题。顾名思义,内存计算使系统内存能够执行一些通常由CPU执行的计算,从而减少了必须在CPU和DRAM之间传输的数据量。
三星和台积电正在积极研发能够执行这种功能的内存,这种内存采用了MRAM(磁性随机存取存储器)存储单元。内存计算仍处于原型阶段,但在硬件方面正在取得进展,以使其成为一项可行的技术。借助像PyPIM这样的转换层,应该能够开发出支持这种计算方法的软件。