宣威市机械设备网

当前位置: 首页 >> 机床设备

研究人员为各种计算机硬件开发了更快的网络分析

2021年08月18日 宣威市机械设备网

研究人员为各种计算机硬件开发了更快的网络分析

图形(表示对象之间关系的数据结构)具有高度的通用性。可以很容易地想象一个描述社交媒体网络连接网络的图表。但是图形还用于各种程序中,例如内容推荐(在Netflix上接下来要看什么?)和导航(到海滩的最快路线是什么?)中国机械网okmao.com。正如Ajay Brahmakshatriya总结的那样,“图形基本上无处不在。”

Brahmakshatriya开发了软件,可以在更广泛的计算机硬件上更有效地运行图形应用程序。该软件扩展了GraphIt(一种最先进的图形编程语言),使其可以在图形处理单元(GPU)上运行,图形处理单元(GPU)可以并行处理许多数据流。这种进步可以加快图形分析的速度,特别是对于受益于GPU并行性的应用程序,例如推荐算法。

Brahmakshatriya,博士 麻省理工学院电气工程与计算机科学系和计算机科学与人工智能实验室的学生将在本月的代码生成和优化国际研讨会上介绍这项工作。合著者包括Brahmakshatriya的顾问Saman Amarasinghe教授,以及Douglas T. Ross Career软件技术开发助理教授Julian Shun,博士后Changwan Hong,最近的MIT博士。学生张云明博士 '20(现在由Google负责),以及Adobe Research的Shoaib Kamil。

程序员编写代码时,不会直接与计算机硬件对话。硬件本身以二进制(1和0)运行,而编码器则使用由单词和符号组成的结构化“高级”语言进行编写。将该高级语言转换为硬件可读的二进制文件,需要使用称为编译器的程序。Brahmakshatriya说:“编译器将代码转换为可以在硬件上运行的格式。” GraphIt是一种专门为图形分析而设计的编译器。

研究人员于2018年开发了GraphIt,以优化基于图的算法的性能,而不管图的大小和形状如何。GraphIt不仅允许用户输入算法,而且还可以计划该算法在硬件上的运行方式。Brahmakshatriya说:“用户可以为日程安排提供不同的选择,直到他们找出最适合他们的安排为止。” “ GraphIt会为每个应用程序量身定制非常专业的代码,以使其尽可能高效地运行。”

许多初创公司和成熟的技术公司都采用了GraphIt来帮助其开发图形应用程序。但是Brahmakshatriya说GraphIt的第一次迭代有一个缺点:它只能在中央处理器或CPU(典型笔记本电脑中的处理器类型)上运行。

Brahmakshatriya说:“某些算法在很大程度上是并行的,这意味着它们可以更好地利用具有10,000个内核的GPU之类的硬件来执行。” 他指出,某些类型的图分析(包括推荐算法)需要高度的并行性。因此Brahmakshatriya扩展了GraphIt,以使图形分析在GPU上蓬勃发展。

Brahmakshatriya的团队保留了GraphIt用户输入算法的方式,但将调度组件调整为适用于更广泛的硬件。“将GraphIt扩展到GPU的主要设计决策是保持算法表示完全相同,” Brahmakshatriya说。“相反,我们添加了一种新的调度语言。因此,用户可以保留之前(针对CPU)编写的相同算法,只需更改调度输入即可获得GPU代码。”

这种针对GPU的新的优化调度功能增强了要求高度并行性的图形算法-包括可同时在数百万个网站中进行筛选的推荐算法或互联网搜索功能。为了确认GraphIt的新扩展的功效,该团队进行了90次实验,将GraphIt的运行时与其他GPU上的最新图形编译器进行了对比。

实验包括从道路网络到社交网络的一系列算法和图形类型。GraphIt在90个案例中有65个运行最快,在其余的试验中均落后于领先算法,证明了它的速度和多功能性。

康奈尔大学计算机科学家阿德里安·桑普森(Adrian Sampson)表示,GraphIt“通过同时获得性能和生产率来促进该领域的发展”。“进行图分析的传统方法有一个或另一个:要么可以编写一种性能中等的简单算法,要么可以聘请专家来编写极其快速的实现,但是这种性能很少为凡人所能获得。 GraphIt扩展是让普通人编写高级抽象算法并从GPU中获得专家级性能的关键。”

桑普森(Sampson)补充说,这一进步在快速变化的领域中尤其有用:“像基因组学这样令人激动的领域,算法发展如此之快,以至于高性能的专家实现无法跟上变化的速度。我对此感到兴奋。生物信息学从业人员可以使用GraphIt来扩展他们有能力进行的基因组分析。”

Brahmakshatriya说,新的GraphIt扩展在图形分析方面提供了有意义的进步,使用户可以轻松地以最先进的性能在CPU和GPU之间切换。他说:“如今的领域是钉子和钉子的竞争。每天都有新的框架问世。” 但他强调,即使进行轻微的优化也值得付出。“公司每天要花费数百万美元来运行图形算法。即使将其运行速度提高了5%,也可以节省数千美元。”