加州大学河滨分校研究人员通过软件调整消除瓶颈 将计算机处理速度提升一倍
加州大学河滨分校研究人员通过软件调整消除瓶颈将计算机处理速度提升一倍从智能手机和个人电脑到数据中心服务器,大多数现代计算机都包含用于人工智能和机器学习的图形处理器(GPU)和硬件加速器。著名的商业案例包括NVIDIAGPU上的张量核心(TensorCores)、Google云服务器上的张量处理单元(TPU)、苹果iPhone上的神经引擎(NeuralEngines)以及GooglePixel手机上的边缘TPU。这些组件各自处理信息,将信息从一个处理单元转移到下一个处理单元时往往会造成数据流的瓶颈。在一项新的研究中,加州大学河滨分校(UCR)的研究人员展示了一种方法,让现有的不同组件同时运行,从而大大提高处理速度并降低能耗。加州大学洛杉矶分校电气与计算机工程系副教授、该研究的共同第一作者曾宏伟说:"不必增加新的处理器,因为你已经拥有了它们。"研究人员的框架被称为同步异构多线程(SHMT),它摒弃了传统的编程模式,即只能将代码区域专门委托给一种处理器,而让其他资源闲置,不为当前功能做贡献。相反,SHMT利用了多个组件的多样性或异质性,将计算功能拆分开来,让它们共享。换句话说,这是一种并行处理。比较(a)传统异构计算机、(b)带有软件流水线的传统异构计算机和(c)SHMT执行功能的方式图/Hsu和Tseng工作原理您可以跳过这部分内容,但对于计算机科学爱好者来说,下面是有关SHMT工作原理的概述(仍然非常基础)。一组虚拟操作(VOPs)允许CPU程序将功能"卸载"到虚拟硬件设备上。在程序执行过程中,运行时系统会驱动SHMT的虚拟硬件,衡量硬件资源的能力以做出调度决策。SHMT采用质量感知工作抢占(QAWS)调度策略,不会占用资源,但有助于保持质量控制和工作负载平衡。运行时系统将VOP分成一个或多个高级操作(HLOP),以便同时使用多个硬件资源。然后,SHMT的运行时系统将这些HLOP分配到目标硬件的任务队列中。由于HLOP与硬件无关,运行时系统可以根据需要调整任务分配。原型测试和结果为了测试这一概念,研究人员构建了一个系统,该系统采用的芯片和处理能力可以在任何像样的后期型号智能手机中找到,并做了一些调整,这样他们还可以测试该系统在数据中心中的功能。SHMT原型平台具体来说,他们使用NVIDIA的JetsonNano模块定制了一个嵌入式系统平台,该模块包含一个四核ARMCortex-A57处理器(CPU)和128个Maxwell架构GPU内核。GoogleEdgeTPU通过其M.2KeyE插槽与系统相连。中央处理器、图形处理器和TPU通过板载PCIe接口交换数据,PCIe接口是主板组件(如图形卡、内存和存储设备)的标准化接口。系统的主内存(4GB64位LPDDR4,1,600MHz,25.6GB/s)托管共享数据。EdgeTPU还包含一个8MB的设备内存,并使用UbuntuLinux18.04作为操作系统。使用基准应用程序对SHMT概念进行了测试后发现,采用性能最佳的QAWS策略的框架将其发挥得淋漓尽致,与基准方法相比,速度提高了1.95倍,能耗显著降低了51%。采用不同调度策略的SHMT速度提升(相对于基准GPU)这一切意味着什么?研究人员说,这对SHMT的影响是巨大的。现有手机、平板电脑、台式机和笔记本电脑上的软件应用程序可以利用这个新的软件库实现一些相当惊人的性能提升。但它也能减少对昂贵的高性能组件的需求,从而带来更便宜、更高效的设备。由于这种方法可以减少能源消耗,进而降低制冷需求,因此可以优化数据中心的两个关键项目,同时还能减少碳排放和用水量。能源消耗和能源延迟产品图/加州大学河滨分校与往常一样,我们还需要对系统的实施、硬件支持以及哪类应用最受益等方面进行进一步的研究,但有了这些成果,我们相信该团队在吸引资源将其推广开来方面不会遇到什么困难。这项研究在第56届IEEE/ACM微体系结构国际研讨会MICRO2023上发表。...PC版:https://www.cnbeta.com.tw/articles/soft/1420279.htm手机版:https://m.cnbeta.com.tw/view/1420279.htm