NPS:使用图神经网络进行准确程序采样的框架
通过创建一个名为Intel nGraph的C++库,支持各种深度学习框架和硬件平台,以实现深度学习性能的优化,包括 TensorFlow、MXNet 和 Intel neon 框架,以及多个硬件平台和编译器优化。
Jan, 2018
本篇论文提出利用图神经网络(Graph Neural Networks,GNNs)来学习通用源代码及其执行的融合表示的新方法,通过一个定义于低级表示的源代码和程序状态的多任务GNN,成功地将复杂的源代码结构和复杂的数据结构转换为更简单,更一致的格式,引领GNN的新应用领域,其应用到具有挑战性的动态任务(SPEC CPU基准套件中的分支预测和预抓取),超越现有技术水平26%和45%,并用于表现高性能的传输学习间接相关任务(算法分类)。
Jun, 2019
ProGraML是一种使用低级别、语言无关和可移植格式的新颖基于图的程序表示,其中包含能够对整个程序或每个顶点执行分类任务的机器学习模型,其提供了一种通用的程序表示,使可学习的模型能够执行优化所必需的程序分析类型,并在传统编译器分析任务、异构设备映射和程序分类等高级任务方面取得了具有以下优势的最新性能:94.0 F1评分
Mar, 2020
本文介绍了一种新颖的GNN架构——IPAGNN,可以更好地学习使用控制流程图执行程序的任务,通过测试结果表明,其在系统性总结和部分程序执行的任务上比多种RNN和GNN基线模型表现更好。
Oct, 2020
本文介绍了一种使用静态中间表达式引导NUMA/prefetcher优化的方法,该方法使用具有不同优化配置的中间表达式数据集,并使用图神经网络模型验证该数据集。该模型融合了静态和动态信息,仅对程序进行30%的性能分析,即可取得与动态模型相同的成果。
Mar, 2022
该论文提出了一种基于流量增强的AST和图神经网络模型的高精准度性能预测方法TEP-GNN,其在四个现实情况下的Java开源项目中被证明是可行的,但需要进一步工作来使训练的模型适用于其他未知项目。
Aug, 2022
本研究提出了一种名为PERFOGRAPH的基于图形的程序表示方法,通过引入新的节点和边来捕获数值信息和组合数据结构,进一步提出了一种改进的嵌入方法来合并数值意识,使其成为一个高度灵活和可扩展的表示方法,以有效地捕获程序的细节依赖关系和语义信息,从而可以作为程序分析、性能优化和并行性发现等各种应用领域的强有力工具,并通过多种实验验证,证明了它在错误率和性能优化等方面的优越性。
May, 2023
该论文介绍了基于 Tensor Processing Units(TPUs)上运行的完整张量程序(表示为计算图)的性能预测数据集 TpuGraphs,该数据集提供了大规模图的图级预测任务,涉及规模可比较的图属性预测数据集的 25 倍的图,以及平均比现有的机器学习程序性能预测数据集大 770 倍的大型图,从而带来了从可伸缩性、训练效率到模型质量等方面的新挑战。
Aug, 2023
通过对神经程序平滑化的深入分析,我们发现机器学习和基于梯度的变异对NPS模糊测试的贡献,为基于机器学习的模糊测试提出了新的基准指南,并提出了MLFuzz平台,用于容易且可复现地对基于ML的模糊测试进行评估。
Sep, 2023