超级计算机是如何工作的?

超级计算机,顾名思义,是极其强大的计算设备。它们被用来模拟极端复杂的系统,如天气和高…
9月11日

采访

克里斯·梅纳德,爱丁堡并行计算中心

戴安娜:超级计算机,顾名思义,是功能极其强大的计算设备。它们被用于模拟极端复杂的系统,如天气,以及量子物理中需要的高精度模拟和复杂计算。所以这可能是分子模型,它甚至可以预测革命和许多其他的事情。爱丁堡并行计算中心(EPCC)为爱丁堡大学和工业界提供计算资源。我们请来了克里斯·梅纳德博士。你好。

克里斯·m -你好。

戴安娜:那么你能告诉我们,什么是超级计算机吗?

超级计算机是一种可以非常快速地执行计算的计算机,比普通计算机快得多。通常,这是通过并行计算完成的,让许多处理单元或节点一起工作。这些节点中的每一个都可以是台式电脑或笔记本电脑中的一台计算机,但它们如何在硬件上连接在一起以及它们如何合作解决问题对计算速度非常重要。

戴安娜:那这是什么结构?这些东西会有多大,它们的功耗是多少,每个部件的速度是多少?

阿贡国家实验室的蓝色基因/P超级计算机Chris M. -举个例子,我们和其他合作伙伴一起运营英国国家高性能计算服务赫克托,这是由科学技术办公室通过EPSRC的高端计算项目资助的。这台特殊的机器叫做赫克托,是克雷XE6。它有1856个节点,每个节点都是一个12核的Opteron处理器,所以总共有44544个核。每个Opterons都配有克雷双子座路由和通信芯片。总的来说,它有一个非常大的内存,大约60太字节,它的理论峰值性能是每秒360万亿次浮点运算,也就是每秒360万亿次浮点运算,是英国最快的计算机,在世界上排名第24位。

戴安娜:好吧,那么这些数字真的很高。我的意思是,这会让我可怜的老式笔记本电脑黯然失色,但是一旦你有了这个硬件,在它上面的软件是什么呢?与你在日常电脑上使用的普通程序相比,它是如何工作的?

超级计算机的超级之处在于这些计算节点是如何耦合在一起的。所以你有一些硬件来做这件事,但你必须写一些软件,使它们能够相互交谈。通常,对于科学编程,您可能拥有的是消息传递模型。所以我们会把问题分散到很多处理器上每个处理器都有少量的本地数据然后每个处理器对这些本地数据进行相同的计算,但是在计算过程中的某个时刻,在计算过程中,处理器之间必须相互通信。所以,你会向你的邻居发送一条消息有一个通信网格他们会通过你向右边的邻居发送一些数据你会从左边的邻居那里接收到数据,然后你可以在很多维度上这样做;上,下,左,右,前后,取决于问题。

Diana:好吧,既然你已经有了这种通信软件,这是否意味着你要开发它,而不是每次都重建一台新的超级计算机,因为很明显,那样做的费用一定很大?

克里斯·m -是的,绝对是。所以你要尝试用这个编程模型让所有的处理器都能相互通信你要用通常使用的语言写一个科学程序比如C或者Fortran然后如果你要用这个消息传递模型,有一个叫做MPI的通信库你可以在多台机器上使用。

戴安娜:超级计算机的发展速度和普通计算机一样吗?

Chris M. -这是一个非常有趣的问题,因为有一种叫做摩尔定律的东西,这是一种经验观察,硅区域内的晶体管数量每18个月左右就会翻一番。从60年代开始就是这样的如果你有一个更小的电路,你的电脑可以运行得更快,但也会更热。也许从2005年左右开始,我们已经不可能在足够快的时间内将足够的能量输入和输出到芯片上,所以它变得太热了。所以你不能再把它作为一个电脑芯片来运行了,但是你可以把它们作为两个芯片或四个芯片来运行,或者更多的芯片,这样你就可以在一个芯片上的一块硅上得到更多的核心。但现在,如果你有很多这样的节点在一起,那么多核,你现在有更复杂的通信模式之间的东西,可以看到同一块内存在一个芯片和东西不能,然后必须沟通,以发送一个信息在芯片之间。

戴安娜:真的,这就像是用很多神经元构建一个大脑。但你在爱丁堡做什么科学研究?你用你的超级计算机建立了什么模型?

克里斯·m -让我给你举个例子-上周,你谈到了科学家对心脏对药物的反应进行建模。在EPCC,我们和牛津大学国王学院的一些科学家一起做了一些工作来改善他们的心脏电生理计算模型的性能,现在它可以在比以前更多的处理器或核心上运行,现在有16000个处理器或核心,这意味着他们可以做1秒的心脏模拟,这将花费他们一分钟而不是一个多小时。这是一个很大的进步,它运行得更快,但如果你想用这个模型来指导手术,那么你需要能够实时地进行。

戴安娜:我明白了。所以这对医学也有帮助,对外科医生也有帮助。

克里斯·m -当然。另一个例子是,如果你看今晚的夜空,就在犁的那一边,你可以看到一颗爆炸的超新星如果你想尝试理解超新星是如何工作的,你可以尝试在超级计算机上运行一个计算。

评论

添加注释