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

2022-06-22
关注
摘要 科学家近日研发了新系统,在保证准确性的前提下让计算机程序运行的更快。来自麻省理工大学的一支科研团队创造了一项新技术[PDF],通过并行化程序来提高在 Unix shell 中的程序运行速度。这是一个 50 年前创建、至今仍被广泛使用的编程环境。

他们的方法将这些程序并行化,这意味着它将程序组件分成可以在多个计算机处理器上同时运行的部分。这使程序能够在其原始运行时间的一小部分内执行 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 到达无法并行化的程序组件(可能它依赖于尚未运行的组件),它会简单地运行原始版本并避免导致错误。

  • shell
您觉得本篇内容如何
评分

相关产品

Switchcraft / Conxall 09GM4MX 音视频接口

The entire insert assembly is held together by snapping the insulated plastic shell over the assemblyThe barrel's special metal tab locks the shell in place. Standard color of plastic shell is gray.

Thermon 赛盟 01 017121 000 热敏开关和热保护器

Caloritech","The Caloritech™ 17100 Hex Head Style Fenwal Thermoswitch® Temperature Control features an outer shellThe shell and strut arrangement has anticipation characteristics that substantially reduce overshoot.

Gems Sensors & Controls 捷迈 Series M 倾角开关

Series M Switches have an impact resistant ABS shell and jacketed cable."," Applications: "

LEMO 雷莫 01 Series 音视频接口

,"Description:","• Coaxial 50 Ω","Main Features:","• Push-Pull self-latching • Over 15 shell styles •

Saint Clair Systems, Inc. Norcross Cup 粘度计

cup designed for manually measuring the viscosity of hotter, thicker fluids than conventional Zahn or Shell

RS Components 欧时 9134862 音频线

A braided aluminium HDMI cable with a robust aluminium head shell for high levels of reliability & abrasion

Neutrik NCJ9FI-S 音视频接口

This innovative range of sockets allow for XLR\/ ¼ Inch Jack connection in a single XLR shell.

HAVE, Inc. NEUNC5MXXB 音视频接口

Male connector without locking \"window\": more stringent housing.Rugged diecast shell in sleek and ergonomic= :1000 cycles Insertion \/ withdrawal force: =

Glenair GMSM2-4S-6K7-18B 音频线

connectors and suited for connector applications with limited available space.Nickel plated connector shell

评论

您需要登录才可以回复|注册

提交评论

西贝网

这家伙很懒,什么描述也没留下

关注

点击进入下一篇

上海交通大学113页PPT带你认识化学传感器知识

提取码
复制提取码
点击跳转至百度网盘