山东省高中信息技术学业水平考试试题网 - 数据与计算|信息系统与社会|数据与数据结构|网络基础|数据管理与分析|移动应用设计|三维设计与创意|开源硬件项目设计|算法初步|智能系统初步

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 143|回复: 2
收起左侧

不学C++也能玩转超算编程,斯坦福大学推出超算编程语言Regent

[复制链接]

945

主题

945

帖子

214748万

积分

超级版主

Rank: 8Rank: 8

积分
2147483647
发表于 2020-10-19 08:20:00 | 显示全部楼层 |阅读模式


选自Standford Engineering
作者:Tom Abate
机器之心编译
参与:韩放、张倩

超级计算机在很多前沿领域都有非常重要的应用,但其编程所需的软件过于复杂,令非程序员出身的科学家非常头疼。近日,斯坦福大学的计算机科学家开发出了一种新的编程语言,旨在降低超级计算机的编程门槛。

只需超级计算机才最有能力应对科学面临的宏大挑战,但是这些机器的编程难度却阻碍了发展。

个人电脑革命曾经改动了一切,为我们大多数人提供了易于获取、更便宜、更小、更快、更易于运用的计算机。科学家们也收获颇丰。他们开发了相应的计算机技术来研究细胞的内部运作、悠远恒星的轨道以及曾经远远超出他们观察能力的其他现象。

但是关于前沿的研究人员来说,一个具有讽刺意味的现象出现了:新的、复杂的仪器开始产生越来越多的数据,因而需要超级计算机来分析实验结果。编程这些硬件所需的软件过于复杂,以致于试图分析如此庞大的数据集的科学家们常常很难掌握。

因而,Regent 出现了,它是由斯坦福大学计算机科学家 Alex Aiken 领导的小组开发的新编程语言,它使超级计算机更容易运用。阿尔卡特朗讯通信和网络教授、粒子物理学和天体物理学以及光子科学教授 Aiken 说:「我们希望创造一个编程环境,让那些不是计算机科学家的研究人员也能运用。」

Regent 帮助解决了超级计算中最大的挑战之一:今天的超级计算机比以往任何时候都要复杂得多,现有的编程语言一直在努力跟上。在人们的想象中,超级计算机可能是一台宏大的机器,但事实上,它是由数千个微处置器组成的阵列。科学家通常用 C++来编程这些数组,C++是 40 年前的一种编程语言,在当时那个年代,主要的微处置器是中央处置单元,即 CPU。CPU 以编程人员所称的串行方式,快速地解决大问题,一个接一个地进行计算。

然而,最近,第二种微处置器已经成为超级计算的重要组成部分,它就是图形处置单元(GPU)。GPU 开始主要用于控制计算机屏幕上的数百万像素,以提高电子游戏的视觉效果,它可以像程序员所说的那样同时或并行地执行许多相似的计算。事实证明,并行处置在机器学习等应用中非常有用。C++已经升级,以跟上这些硬件变化。不幸的是,补丁的增加使得该语言越来越难以运用。然而,Regent 使得超级计算机程序员面临的一些问题变得愈加简单,比如将串行处置任务分配给 CPU,将并行处置任务分配给 GPU。

一旦 Regent 在概念层面上构建了程序,程序员的意图就会被转换——或者,运用技术术语,编译——成第二个软件层,叫做 Legion,Aiken 也开发了这个软件层。Legion 生成机器代码,即指导超级计算机硬件如何执行程序的准确指令。Regent 和 Legion 之间的紧密集成使得程序员更容易做出其他重要的决定,特别是超级计算机必需分析的数据存储在哪里。

SLAC 国家加速器实验室的科学家 Elliott Slaughter 说,这两个层的集成俭省了程序员的金钱和时间,他几乎从 Regent 和 Legion 降生之初就开始研究这两个层。计算机消耗能量,这是有代价的。但是移动数据的能源成本可能是对该数据进行计算的 100 倍。此外,大型实验往往依赖于搜集大量数据的仪器。Slaughter 说,一些仪器每秒可以搜集相当于 20 张视频 DVD 的数据,用于持续 15 分钟的实验。即使以光速在光纤上移动,从仪器到超级计算机获取大量数据也可能产生滞后,这可能会破坏分析。「你把数据放在哪里,是程序员做出的最重要的决定之一,」Slaughter 说。Regent 和 Legion 经过在等候计算时存储数据,给程序员带来了史无前例的控制权,也俭省了金钱和时间。

他说:「你可以先编程计算任务,然后再定位数据,这非常容易,并且不需要重新编写代码。」

Regent 会广泛运用?研究人员说,新语言必需克服很大的惰性。「Regent 是一种非常不同的编程方式,」Aiken 说。「研究人员需要一段时间才能适应其所需的思维方式。」

但有两个要素对其有利。首先,超级计算硬件在不断改良。美国能源部(U.S.Department of Energy)正在推进其 Exascale 计算项目的发展,该项目的目的是在 2021 年左右将超级计算能力提高 50 倍。能源部正在支持软件项目,包括 Regent,以帮助编程跟上进度。

此外,许多想运用超级计算机的科学家不熟习当前的工具,也不清楚编程大型实验所需的峻峭学习曲线。即使是经验丰富的超级计算机程序员也可能会觉得当前的系统很麻烦,并怀疑能否有更好的方法。Aiken 说:「我们经常与那些意识到 Regent 让他们生活更轻松的科学家交谈。」

原文链接:https://engineering.stanford.edu/magazine/article/new-more-user-friendly-language-programming-supercomputers


潍坊行知学校复读报名系统 正式上线了,集高考复读报名,费用(学费、住宿费、资料费)核算,校园全景VR,课堂教学实录于一体。不尽事宜,致电潍坊行知学校教务处王老师(13854441151),微信在线(13854441151)。潍坊行知学校复读咨询,潍坊行知学校复读报名系统,潍坊行知学校复读招生预报名系统,潍坊行知学校,潍坊行知学校复读,潍坊行知学校复读收费,潍坊行知学校复读收费标准,潍坊行知学校复读生收费标准,潍坊行知学校复读报名,潍坊行知学校复读报名时间,潍坊行知学复读招生,潍坊行知学校复读生,潍坊行知学校复读班,潍坊行知学校复读招生分数要求,潍坊行知学校复读招生简章。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
楼主热帖
+1
145°C
2
  • admin
  • admin
过: 他们

帖子地址: 

回复

使用道具 举报

2111

主题

8976

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647
QQ
发表于 2020-10-19 08:20:15 | 显示全部楼层
有时间可以研究研究
回复 支持 反对

使用道具 举报

2111

主题

8976

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647
QQ
发表于 2020-10-19 08:20:28 | 显示全部楼层
是不是程序员写流程图就行了,不需要写代码?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

百度一下 百度二下 百度三下 开门大吉

QQ|Archiver|手机版|小黑屋|山东省高中信息技术学业水平考试试题网 ( 鲁ICP备16049757号 )|网站地图

GMT+8, 2021-1-27 11:20 , Processed in 0.252922 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表