过去十年里,机器学习的大部分焦点都集中在CPU和加速器上,主要是GPU,还包括定制的 ASIC,芯片架构的发展旨在提高并行数学性能。随着数据以及模型参数爆炸式增长,对处理速度的需求也在快速增长,越来越多的供应商——从英特尔、AMD、IBM等主流企业到Ampere Computing、Graphcore等初创公司——都在提供硅芯片旨在满足这一需求。
企业纷纷通过人工智能和机器学习助力研究自身产生的大量数据,找出模型然后获取有用信息,这些信息可以用于支持企业做出更好更及时的业务决策、保护运营免受网络攻击等。到 2028年,机器学习市场规模有望从去年的155亿美元增长到超过1520亿美元。
然而,虽然CPU、GPU和定制ASIC都有了长足发展,但对于HPC和AI的系统来说,需要更多的内存容量和内存带宽。
华盛顿西北太平洋国家实验室 (PNNL) 的科学家与闪存芯片制造商美光的工程师们正在合作为这些基于机器学习的计算工作负载开发出先进的内存架构,据称该项目——Advanced Scientific Computing Research(ASCR,先进科技计算研究)已经进行了约两年时间,也就是始于美光与英特尔结束闪存合作的时间节点。
PNNL计算首席科学家兼实验室项目负责人James Ang称,硅芯片的大部分发展都是处理和支持人工神经元网络…它们必须很好地映射到GPU。而高带宽内存在帮助保持芯片接收数据上已经有了发展。但ASCR的目标不仅是商用深度学习和机器学习的方法,还有如何将机器学习方法与科学计算相结合,比如我们传统的偏微分方程和用于科学模拟的日常方程的解。
另一方面还有高带宽内存,虽然它具有更快的性能,但容量有限,科学模拟需要更多内存。具体来说,当我们谈到科学的机器学习时,内存方面需要有异构计算节点、计算架构、混合使用GPU或其他类型的加速器。
其挑战在于,无论是CPU还是GPU,每个处理器都有单独的内存池。PNNL和美光想做的是创建一个异构架构,其中包括一个统一内存池,Ang称之为“大型共享内存核心”,任何处理器(任何CPU和任何加速器)都可以通过一个开关访问它,后者将赋予更大的系统更高的可扩展性。
实现这个目标的关键在于Compute Express Link (CXL),这种行业标准能让不同连接设备上的CPU内存之间保持一致性,从而实现资源共享。Ang称其旨在解决共享内存核心问题时,将CPU和加速器处于同等地位。
美光近数据计算首席架构师Tony Brewer表示,CXL “为重新变革内存层次结构打开了一扇门”。他称以内存为中心的计算是“高性能数据分析和模拟的下一个范式”。
Brewer表示,CXL3.0将支持通过CXL架构交换机连接到多个CPU和/或GPU的大容量、可扩展容量内存。 这种计算方式被称为‘内存集中计算(memory concentric computing),在这里,大型数据集被调用计算,在CPU和GPU之间进行共享,减少对高延迟存储的访问,允许使用标准内存语义访问数据。
不过,CXL技术和交换结构的结合会产生延迟影响。这也激发了我们把一些“基本”计算任务移动到就近的架构连接内存和存储的积极性来补偿这些延迟影响,这也可以获取提高应用性能和降低能耗的额外好处。
PNNL和美光正在构建一个用FPGA实现近内存计算的测试平台,包括创建针对美光近内存设计的专用加速器等用于科学计算、机器学习和数据分析工作。专用加速器将针对大型共享内存池的不规则内核(如稀疏矩阵和图形分析)而设计,还有以内存为中心分析的并行加速器。并行加速器包括高吞吐量和基于数据流的架构。
扩展异构计算正常工作还需要编译器框架,需要运行时间支持将科学和机器学习图形分析应用映射到这组处理器和加速器上。在软件堆栈中具有设计能力——至少在原型级别上——编程模型将应用映射到现有的异构计算架构上,其中包括我们正在定义的共享内存池和CPU、GPU以及其他加速器。
以及建立概念验证系统。可以将应用移植到新方案中,并了解需要进行哪些权衡确保系统能够充分发挥其潜力。美光正在开发嵌入基于CXL的内存和存储子系统的计算能力。
正在进行的工作还包括“探索如何共享数据、定义哪些功能可以与内存和存储共存、什么是应用程序编程接口等。
文章编译整理自:https://www.nextplatform.com/2022/03/14/architecting-memory-pools-for-hpc-and-ai-applications-using-cxl/