您的位置: 首页 >互联网 >

该工具可预测代码在芯片上运行的速度

2020-01-15 19:11:40 来源:

麻省理工学院的研究人员发明了一种机器学习工具,可以预测计算机芯片执行来自各种应用程序的代码的速度。

为了使代码尽可能快地运行,开发人员和编译器(将编程语言转换为机器可读代码的程序)通常使用性能模型,这些模型通过模拟给定的芯片体系结构来运行代码。

编译器使用该信息来自动优化代码,而开发人员使用该信息来解决将运行该代码的微处理器的性能瓶颈。但是,机器代码的性能模型是由相对较少的专家小组手写的,并且未经适当验证。结果,模拟的性能测量通常会偏离实际结果。

在一系列会议论文中,研究人员描述了一种新颖的机器学习管道,该管道可自动执行此过程,从而使其变得更轻松,更快,更准确。在 6月份的国际机器学习大会上发表的 一篇论文中,研究人员介绍了Ithemal,这是一种神经网络模型,它以“基本块”(计算指令的基本片段)的形式训练标记数据,以自动预测其持续时间使用给定的芯片执行以前看不见的基本块。结果表明,Ithemal的性能要比传统的手动调整模型精确得多。

然后,在11月举行的IEEE国际工作负载表征研讨会上,研究人员展示 了一个基准测试套件,这些 套件来自多个领域,包括机器学习,编译器,密码学和可用于验证性能模型的图形。他们将超过300,000个已分析的块合并到一个名为BHive的开源数据集中。在评估过程中,Ithemal预测了英特尔芯片运行代码的速度要比英特尔自身构建的性能模型还要好。

最终,开发人员和编译器可以使用该工具来生成代码,这些代码可以在越来越多的多样化“黑匣子”芯片设计上更快,更高效地运行。现代计算机处理器不透明,极其复杂且难以理解。编写对这些处理器执行得尽可能快的计算机代码也面临着巨大的挑战。”合著者迈克尔·卡宾(Michael Carbin)说,他是电机工程与计算机科学系(EECS)的助理教授,计算机科学与工程学的研究员。人工智能实验室(CSAIL)。“该工具是朝着对这些芯片的性能进行完全建模以提高效率的重要一步。”

最近,在 12月NeurIPS会议上发表的 一篇论文中,该团队提出了一种自动生成编译器优化的新技术。具体来说,它们会自动生成一个名为Vemal的算法,该算法将某些代码转换为向量,可用于并行计算。Vemal优于LLVM编译器中使用的手工矢量化算法,LLVM编译器是业界常用的编译器。

从数据中学习

卡宾说,手工设计性能模型可能是“一门妖术”。英特尔提供了超过3000页的详尽文档,描述了其芯片的体系结构。但是目前只有一小部分专家将构建性能模型,以模拟这些架构上代码的执行。

Mendis说


郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

Copyright 平安财经网 All Rights Reserved 版权所有 复制必究 联系QQ280 715 8082

宁德市东侨经济开发区睿迅网络科技有限公司运营

本站除标明“本站原创”外所有信息均转载自互联网 版权归原作者所有。