解放程序员!英特尔机器编程工具可自动debug
解放程序员!英特尔机器编程工具可自动debug英特尔今天推出了机器编程研究系统ControlFlag,它可以自主检测代码中的错误。虽然仍处于早期阶段,这个新颖的自我监督系统有望成为
英特尔今天推出了机器编程研究系统ControlFlag,它可以自主检测代码中的错误。虽然仍处于早期阶段,这个新颖的自我监督系统有望成为一个强大的生产力工具,帮助软件开发者进行耗时费力的Debug。在初步测试中,ControlFlag利用超过10亿行未标记的产品级别的代码进行了训练并学习了新的缺陷。
英特尔首席科学家、英特尔研究院机器编程研究主任及创始人Justin Gottschlich表示:“我们认为ControlFlag是一个强大的新工具,可以大幅减少评估和Debug代码所需的时间和成本。研究发现,软件开发者会花费大约一半的时间用来Debug。通过ControlFlag以及类似的系统,程序员有望大幅减少Debug的时间并把更多时间用于人类程序员最擅长的工作——向机器展现有创造性的新想法。”
在软件重要性逐渐突显的今天,开发者依然继续把不成比例的大量时间用于修复Bug,而不是用于写代码。事实上,在IT行业每年花费的1.25万亿美元软件开发成本中,大约有50%是用于Debug代码1 。
随着异构时代的来临,即由多样化专用处理器组合来管理当今的海量数据,管理这些系统所需的软件变得越来越复杂,使得出现Bug的可能性也越来越高。此外,找到能够为跨架构的硬件正确、高效、安全地写代码的程序员非常困难,这同样也增加了代码中出现难以发现的新错误的可能性。因此,Debug代码工作将给开发者和整个行业带来更高的代价。
完全实现的ControlFlag通过自动化处理测试、监控和Debug等繁琐的软件开发工作,可以帮助缓解上述挑战。这不仅可以提高开发者的工作效率并让他们把更多时间用于创意,也能解决当前软件开发中成本最高的问题之一。
ControlFlag检测Bug的功能是通过机器编程实现的,其中融合了机器学习、形式化方法、编程语言、编译器和计算机系统。
具体来说,ControlFlag通过被称为异常检测(anomaly detection)的功能进行运转。作为自然界中生活的人类,我们通过观察了解到某些被认为是“正常”的模式。类似地,ControlFlag通过学习经过验证的例子来检测正常的编程模式,发现代码中可能造成Bug的异常。此外,不管代码使用什么编程语言,ControlFlag都可以检测这些异常。
ControlFlag的无监督模式识别方法的一个主要优势是,它可以从本质上学会适应开发者的风格。在有限的需要评估的控制工具输入信息中,ControlFlag可以识别编程语言中的各种风格,类似于读者识别英语中使用完整单词和缩略语的差异。
该工具会学会识别并标记这些风格选择,并根据其洞察可以自制错误识别和建议解决方案,从而让ControlFlag尽可能避免把两个开发团队之间的风格差异认为是代码错误。
ControlFlag已经证明,能够在广泛使用的产品级别代码中发现隐藏的Bug,而这些代码之前已经被软件开发者审核过。例如,在分析cURL(一个开源的命令行工具,被程序员广泛地用于实现互联网下载)时,ControlFlag发现了一个之前未被发现的异常,促使cURL开发者提出了一个更好的解决方案。
英特尔甚至已经开始评估在内部使用ControlFlag,在自己的软件和固件产品化中寻找Bug。这是英特尔Rapid Analysis for Developers项目的关键组成部分,该项目旨在通过提供专家支持从而帮助程序员加快速度。
-
英特尔首提“集成光电”愿景:重构数据中心网络和架构,打破I/O功耗墙2020-12-04
-
英特尔为量子计算再添黑科技:发布新款量子控制芯片2020-12-04
-
啥是快排? 快速排序到底有多快?(含代码分析)2020-12-03
-
赋能开发者快速获取全链路能力,AIoT平台涂鸦智能推动行业规模化发展2020-12-02
-
复宏汉霖汉曲优获医保代码,进入多家国际顶尖医院2020-12-02
-
赋能行业提升技术维度,涂鸦智能助力AIoT开发者实现价值增迁2020-11-26
-
全球硬科技开发者大会(佛山)正式开幕,聚焦制造业智慧转型2020-11-25
-
英特尔与南京溧水经济技术开发区共同成立智能交通研究院2020-11-25
-
32核打赢AMD64核 英特尔Ice Lake为HPC提供强劲性能2020-11-20
-
AppStore抽成比例减半,开发者必定蜂拥而入!2020-11-19
-
生态共建分享利好,涂鸦智能助力全球AIoT开发者打造自有生态2020-11-18
-
英特尔公布新一代至强Platinum处理器性能2020-11-18
-
AIoT行业进入生态增殖时代,涂鸦智能赋能开发者打造专属生态2020-11-13
-
英特尔Xe架构迎来重要进展:首款服务器独显发布2020-11-13
-
拥抱未来,开源先行!OpenI启智社区首批优秀开发者榜单即将出炉2020-11-13