打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
程序猿们终于可以歇歇,喝杯咖啡了



编码员需要数月才能完成的工作,麻省理工学院计算机科学及人工智能实验室(CSAIL)的“Helium”系统仅需要一个小时即可完成。




去年,麻省理工学院的计算机科学家和Adobe公司的工程师试图合作解决一个许多公司面临的重大问题:数据腐坏。


Adobe公司大获成功的图片编辑器Photoshop就是一个很好的例子,该软件刚刚庆祝了它的第25个生日。这些年来,Photoshop积累了大量的代码,并对现在的旧硬件进行了优化。


“必须优化软件中用于图像处理的高性能代码,”麻省理工学院教授兼计算机科学与人工智能实验室(CSAIL)研究员萨曼·阿马拉辛哈(SamanAmarasinghe)认为,“但不利的一面是代码变得更加低效和更加难以理解了。”


这导致了阿马拉辛哈所谓的“十亿美元问题”。像Adobe这样的公司必须每隔几年便将大量的人力投入到代码修复中,并且需要手工测试各种不同的策略以试图对其进行修复。


这个名为Helium的计算机程序能够帮助解决计算领域的“十亿美元问题”:很多公司不得不投入大量时间和精力用手工的方式修复老代码

但假如存在一个可以自动修复旧代码的计算机程序,从而使工程师们能够专注于设计新软件等更加重要的工作,那么情况又会如何呢?


Helium是一种不需要原始来源即可在数小时甚至数分钟之内修复和调整代码的CSAIL系统。


该团队从简单却又极难分析的构建模块编程着手:已精简调试符号的二进制代码,这是唯一可用于Photoshop等专用软件的代码片段。


一种常用于此类软件的特殊计算内核类型是“模板内核”,它可以使你对整个范围内的像素进行操作。模板内核对更新来说尤其重要,因为它们占用了大量内存和计算能力,当有新硬件可用时,它们的性能退化十分迅速。


利用Helium,研究人员能够将这些内核从精简二进制中分离出来,并将其重组为Halide可读的高级表述。Halide是CSAIL设计的一种面向图像处理的编程语言。


从二进制到高级语言是一个巨大的飞跃,根据主要作者查理斯·美迪斯(Charith Mendis)所述,团队最初并不承认其可行性。


“这些优化后的二进制运算次序非常复杂,这意味着它们很难被解开,”CSAIL的研究生美迪斯说道,“因为模板一遍又一遍地重复同样的计算,所以我们可以积累足够的数据来恢复原始算法。”


然后,Helium系统就此用优化后的组件取代原始的数据腐坏部分。最终结果:Helium能够将某些Photoshop过滤器的性能提高75%,并且将 Microsoft Windows’IrfanView等未优化项目的性能提高400%至500%。


“我们发现,Helium可以在一天之内完成更新,而人类工程师则需要至少三个月才能完成。”阿马拉辛哈说道,“这样的系统可以帮助企业确保下一代的代码会更快,并免去了需要为此投入100个人的麻烦。”


这项研究是计算机协会编程语言专业组(SIGPLAN)于6月13至17日在俄勒冈州波特兰市举办的编程语言设计与实现大会(PLDI2015)上的一篇论文提出的。


该论文的作者为美迪斯及其研究生同学杰弗瑞·勃姆(Jeffrey Bosboom)和吴凯文(Kevin Wu)、研究科学家修艾布·卡米尔(Shoaib Kamil)、博士后乔纳森·拉根-凯利、博士阿马拉辛哈、以及Adobe公司和Google公司的研究人员。


“我们正处于一个计算机体系结构以惊人速度改变的时代,所以编写出适用于多个平台的代码至关重要。”犹他大学计算机学院的玛丽·霍尔教授认为,“Helium是一种很有意义的方式,它有可能促进模板计算的更高层次表述,从而更容易运用到将来的体系结构中。”


这项工作还有一个让人意想不到的额外作用,那就是让研究人员看到了程序员处理旧代码时使用的不同技巧,就好像考古学家在梳理计算化石。


“我们可以看到工程师用来优化算法的‘数据技巧’,” 阿马拉辛哈说道。“也可以更好地理解程序员如何应对不同编码挑战的大背景。”


精选阅读

AI年度重磅VR主题公园基因编辑

North Face谷歌未来谷歌开源

脑震荡基因编辑狗室内定位

空气治理人脑仿生芯片健康数据

杀人编程印度能源危机 虚拟现实

(点击标题阅读)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Adobe Photoshop CC 2017 解压安装方法
Adobe Photoshop cc2019版本安装时提示“安装时出错,请退出安装程序并重新开始(错误代码143)”的解决方法
Adobe系列之PSIDAI资料大放送!不容错过
PS教程:常见的PS安装错误代码与解决方法
解决在安装 Adobe Creative Cloud 应用程序时遇到错误代码 146 或 147 的...
ps安装出现错误代码160怎么办
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服