加州大学河滨分校研究人员通过软件调整消除瓶颈 将计算机处理速度提升一倍

摘要:

利用一种新的并行处理软件框架,个人电脑、智能手机和其他设备中的现有处理器可以获得极大的动力和效率提升,这种软件框架旨在消除瓶颈并同时使用多个芯片。

从智能手机和个人电脑到数据中心服务器,大多数现代计算机都包含用于人工智能和机器学习的图形处理器(GPU)和硬件加速器。著名的商业案例包括NVIDIA GPU 上的张量核心(Tensor Cores)、Google云服务器上的张量处理单元(TPU)、苹果 iPhone 上的神经引擎(Neural Engines)以及Google Pixel 手机上的边缘 TPU。

这些组件各自处理信息,将信息从一个处理单元转移到下一个处理单元时往往会造成数据流的瓶颈。在一项新的研究中,加州大学河滨分校(UCR)的研究人员展示了一种方法,让现有的不同组件同时运行,从而大大提高处理速度并降低能耗。

加州大学洛杉矶分校电气与计算机工程系副教授、该研究的共同第一作者曾宏伟说:"不必增加新的处理器,因为你已经拥有了它们。"

研究人员的框架被称为同步异构多线程(SHMT),它摒弃了传统的编程模式,即只能将代码区域专门委托给一种处理器,而让其他资源闲置,不为当前功能做贡献。

相反,SHMT 利用了多个组件的多样性或异质性,将计算功能拆分开来,让它们共享。换句话说,这是一种并行处理。

9_fmdh2r.jpg

比较 (a) 传统异构计算机、(b) 带有软件流水线的传统异构计算机和 (c) SHMT 执行功能的方式 图/Hsu 和 Tseng

工作原理

您可以跳过这部分内容,但对于计算机科学爱好者来说,下面是有关 SHMT 工作原理的概述(仍然非常基础)。一组虚拟操作(VOPs)允许 CPU 程序将功能"卸载"到虚拟硬件设备上。在程序执行过程中,运行时系统会驱动 SHMT 的虚拟硬件,衡量硬件资源的能力以做出调度决策。

SHMT 采用质量感知工作抢占(QAWS)调度策略,不会占用资源,但有助于保持质量控制和工作负载平衡。运行时系统将 VOP 分成一个或多个高级操作 (HLOP),以便同时使用多个硬件资源。

然后,SHMT 的运行时系统将这些 HLOP 分配到目标硬件的任务队列中。由于 HLOP 与硬件无关,运行时系统可以根据需要调整任务分配。

原型测试和结果

为了测试这一概念,研究人员构建了一个系统,该系统采用的芯片和处理能力可以在任何像样的后期型号智能手机中找到,并做了一些调整,这样他们还可以测试该系统在数据中心中的功能。

WdhI0mDn.jpg

SHMT 原型平台

具体来说,他们使用NVIDIA的Jetson Nano模块定制了一个嵌入式系统平台,该模块包含一个四核 ARM Cortex-A57 处理器(CPU)和 128 个 Maxwell 架构 GPU 内核。Google Edge TPU 通过其 M.2 Key E 插槽与系统相连。

中央处理器、图形处理器和 TPU 通过板载 PCIe 接口交换数据,PCIe 接口是主板组件(如图形卡、内存和存储设备)的标准化接口。系统的主内存(4 GB 64 位 LPDDR4,1,600 MHz,25.6 GB/s)托管共享数据。Edge TPU 还包含一个 8 MB 的设备内存,并使用 Ubuntu Linux 18.04 作为操作系统。

使用基准应用程序对 SHMT 概念进行了测试后发现,采用性能最佳的 QAWS 策略的框架将其发挥得淋漓尽致,与基准方法相比,速度提高了 1.95 倍,能耗显著降低了 51%。

suGhZCak.jpg

采用不同调度策略的 SHMT 速度提升(相对于基准 GPU)

这一切意味着什么?

研究人员说,这对 SHMT 的影响是巨大的。现有手机、平板电脑、台式机和笔记本电脑上的软件应用程序可以利用这个新的软件库实现一些相当惊人的性能提升。但它也能减少对昂贵的高性能组件的需求,从而带来更便宜、更高效的设备。

由于这种方法可以减少能源消耗,进而降低制冷需求,因此可以优化数据中心的两个关键项目,同时还能减少碳排放和用水量。

XyhuvDS7.png

能源消耗和能源延迟产品 图/加州大学河滨分校

与往常一样,我们还需要对系统的实施、硬件支持以及哪类应用最受益等方面进行进一步的研究,但有了这些成果,我们相信该团队在吸引资源将其推广开来方面不会遇到什么困难。

这项研究在第 56 届 IEEE/ACM 微体系结构国际研讨会MICRO 2023 上发表。

查看评论
created by ceallan