文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

MIT开发PaSh系统:准确性前提下让程序运行得更快

2024-12-13 21:49

关注

他们的方法将这些程序并行化,这意味着它将程序组件分成可以在多个计算机处理器上同时运行的部分。这使程序能够在其原始运行时间的一小部分内执行 Web 索引、自然语言处理或分析数据等任务。

麻省理工学院计算机科学和人工智能实验室 (CSAIL) 的研究科学家 Nikos Vasilakis 说:“有很多人使用这些类型的程序,比如数据科学家、生物学家、工程师和经济学家。现在他们可以自动加速他们的程序,而不必担心会得到错误的结果”。

该系统还使开发数据科学家、生物学家、工程师和其他人使用的工具的程序员变得容易。 Vasilakis 补充说,他们不需要对他们的程序命令进行任何特殊调整来实现这种自动、无错误的并行化,他是来自世界各地的研究人员委员会的主席,他们已经在这个系统上工作了近两年。

Vasilakis 是该小组最新研究论文的高级作者,其中包括麻省理工学院的合著者和 CSAIL 研究生 Tammam Mustafa,并将在 USENIX 操作系统设计和实现研讨会上发表。

合著者包括主要作者、宾夕法尼亚大学研究生 Konstantinos Kallas;华沙 Staszic 高中的学生 Jan Bielak; Aarno Labs 的软件工程师 Dimitris Karnikis;前麻省理工学院博士后,现为Google软件工程师的 Thurston H.Y. Dang;史蒂文斯理工学院计算机科学助理教授 Michael Greenberg。

这个名为 PaSh 的新系统专注于在 Unix shell 中运行的程序或脚本。脚本是指示计算机执行计算的命令序列。 shell 脚本的正确和自动并行化是研究人员几十年来一直在努力解决的一个棘手问题。

Unix shell 仍然很受欢迎,部分原因是它是唯一一种允许一个脚本由多种编程语言编写的函数组成的编程环境。不同的编程语言更适合特定的任务或数据类型;如果开发人员使用正确的语言,解决问题会容易得多。

Vasilakis 补充道:“人们还喜欢使用不同的编程语言进行开发,因此将所有这些组件组合到一个程序中是经常发生的事情”。虽然 Unix shell 支持多语言脚本,但其灵活和动态的结构使得这些脚本难以使用传统方法进行并行化。

当一个程序用一种语言编写时,开发人员有关于它的特性和语言的明确信息,可以帮助他们确定哪些组件可以并行化。但是这些工具不存在用于 Unix shell 中的脚本。用户无法轻松查看组件内部发生的情况或提取有助于并行化的信息。

为了克服这个问题,PaSh 使用了一个预处理步骤,将简单的注释插入到它认为可以并行化的程序组件上。然后 PaSh 尝试在程序运行时并行化脚本的这些部分,在它到达每个组件的确切时刻。这避免了 shell 编程中的另一个问题——无法提前预测程序的行为。

通过“及时”并行化程序组件,系统避免了这个问题。与尝试提前执行并行化的传统方法相比,它能够有效地加速更多的组件。

即时并行化还确保加速程序仍然返回准确的结果。如果 PaSh 到达无法并行化的程序组件(可能它依赖于尚未运行的组件),它会简单地运行原始版本并避免导致错误。

来源:cnBeta.COM内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯