异构计算获得代码相似性工具
由英特尔公司和大学合作伙伴支持的异构计算机器编程框架是围绕自动引擎构建的,该引擎分析代码的相似性。该方法最终可以允许非程序员基于意图创建软件。
英特尔(NASDAQ:INTC)与佐治亚理工学院和麻省理工学院的研究合作伙伴表示,他们的机器推断代码相似性(MISIM)系统朝着基于意图的编程迈出了一步。自动化框架旨在探查代码结构以确定其意图。然后,它分析其他代码以查找可能产生相似行为的语法差异。
研究人员声称他们的方法比当前的代码相似性系统提供了40倍的性能提升,为从自动化测试和调试到代码推荐的新应用打开了大门。
英特尔实验室机器编程研究总监贾斯汀·戈茨利希(Justin Gottschlich)表示:“机器编程完全实现后,将使每个人都能以最适合自己的方式表达意图,无论是代码,自然语言还是其他方式,来创建软件。”
MISIM还致力于解决将CPU,GPU,FPGA与其他处理器类型和设备混合搭配的异构计算平台日益复杂的问题。这种复杂性以及程序员的短缺,推动了自动化编码的努力。代码相似性框架是新兴的机器编码方法中的一种,用于生成可实现预期功能的代码。
MISIM被提升为准确确定两段代码何时可以执行相似的计算,无论它们是否使用不同的算法或数据结构。英特尔-乔治亚理工大学的MIT小组在6月发表的研究论文中表示,MISIM基于新的“上下文感知语义结构”以及基于神经的代码相似性评分算法。这些核心组件已在神经网络体系结构中实现,以创建本周发布的自动代码分析引擎。
MISIM已针对三个现有的代码相似性系统进行了基准测试,其中包括针对开发人员的Facebook Aroma代码推荐工具。研究人员报告说,基于对超过45,000个程序的评估,MISIM的性能提高了40倍。
据说可以将MISIM与早期代码相似性系统区分开的特殊调味料称为CASS,用于上下文感知的语义结构。研究人员说,与现有平台不同,CASS可以配置为特定的上下文,从而可以收集描述代码的详细信息。结果是一个自动化的系统,该系统可以确定执行什么代码而不是执行代码的方式。
CASS不需要编译器,这意味着它可以在编写时在未完成的代码上执行。英特尔表示,新功能有望用于先进的自动化调试和建议系统。
英特尔说:“一旦将代码的结构集成到CASS中,许多神经网络系统就会根据其设计要执行的工作,为代码片段提供相似度。” “换句话说,如果两段代码在结构上看起来非常不同但执行相同的功能,那么这些神经网络会将它们评为大致相似。”
英特尔表示,MISIM目前正从实验室过渡到演示阶段,在该阶段它将作为开发人员在公司的异构计算体系结构中进行编程的代码推荐引擎的基础。最终,MISIM可以集成到英特尔的软件开发运营中。
英特尔的Gottschlich说:“我想,如果可能的话,大多数开发人员会很乐意让机器为他们找到并修复错误,我知道我会的。”
标签: 异构计算