查看原文
其他

AI 和 HPC 融合的高性能计算机体系结构

算力基建 2022-04-29

The following article is from 清华校友三创大赛 Author 郑纬民

导读

本文由AI数据派授权发布。


今年第六届清华校友三创大赛AI大数据全球总决赛在郑州举行。在开幕式暨“智创未来”科技前沿高峰论坛上,中国工程院院士、清华大学计算机科学与技术系教授郑纬民在线上分享了关于“AI 和 HPC 融合的高性能计算机体系结构”主题报告。


郑纬民院士从AI算力和基础设施的重要性、AI算力的基础设施形态等方面进行了分享,推荐给大家。

 
本文要点如下:

1、 AI有三驾马车,大数据、算力、算法,大数据我国不比美国差,智能算力跟美国还差很多,算法我们也在做跟踪,三架马车,两个美国占有优势。
2、AI算力正在改变基础科学与人工智能领域的创新模式,AI跟HPC加高性能物理计算加速数百倍,我们要买一台,或者造一台能处理人工智能问题的计算机。
3、希望做出一台机器,既能做传统科学计算,又能做人工智能计算。我国这方面,融合计算机,还属于空白。
4、HPC跟AI尽管有不同点,但是对访问内存、高性能网络和外存的需求是类似的;不同精度的计算单元如果能在一定程度复用,就可以在处理器层面同时支撑;AI for Science的出现,使得HPC程序中也包含AI算法,因此HPC+AI的融合成为刚性需求。
5、未来两年或三年,我预测HPC跟AI融合的体系结构就会出来,一台机器既做传统的科学计算,又可以做人工智能的应用。
6、混合精度算法,HPC加AI加Big Data是一个方向。

以下内容为现场视频报告实录:

郑州市和清华大学的领导们,各位清华大学的校友们,大家上午好!第六届清华校友三创大赛AI大数据赛道全球总决赛在郑州举行,我因工作安排未能到现场,通过视频远程给大家讲一讲。

我是清华大学计算机系郑纬民,很高兴来参加这个大会。我今天的报告题目是“AI和HPC融合的高性能计算机体系结构”。我大概讲两个问题。

第一我先讲讲AI算力和基础设施的重要性。

我们说人工智能是当前中美科技竞争的重要领域,美国国家AI安全委员会主席埃里克·施密特(Eric Schmidt)说:“必须不惜一切代价在AI上击败中国。”我们看,中国跟美国两国在人工智能领域的优势究竟怎么样。


我们知道AI有三驾马车,大数据、算力、算法。我们先看大数据,我在大数据上面插了一个中国的国旗,表示我们中国还是有优势的,特别是我们大数据的应用,应该说是不比美国人差,这是大数据。看看智能算力,智能算力严重制约我国AI领域的创新能力,这个人工智能在算力方面,我们跟美国比还差很多,因此在算力方面插了一个美国国旗。再来看算法,算法应该说也是美国人做的比我们好,我们基本上是有点跟踪的味道,他们做出来了,我们过一段时间也把它做出来了,处于这么一个状态。因此三架马车里面,两面是美国的国旗,一面是中国的国旗。

我们说,算力就是生产力,推动了经济发展的方式变革,预计到2035年,AI将推动我国GDP增长21%。AI这个算力正在改变基础科学与人工智能领域的创新模式。比如说,蛋白质结构预测,这是我们最近人工智能非常大的一个应用,它使得发展进步了很多年;另外一个,AI跟HPC加高性能物理计算加速数百倍。

到2020年4月,国家发改委明确将人工智能纳入新基建范围,因此说,人工智能是新基建。新基建做什么事情呢?我的体会是,我们要买一台或者造一台能处理人工智能问题的计算机。
 
先说说人工智能有多种多样的应用场景

第一类应用是图象检测,视频检索。这类应用的核心问题是卷积网络,我们在安防、医疗诊断、自动驾驶等等方面已经发挥了很好的作用。因此这类应用已经为国民经济发展,为我们国家的安全起了很大作用。

第二类应用是决策类,就是做决策的。比如说我们交通规划,国家计划、规划,也要用到人工智能的应用。它主要是强化学习,这类应该也起了很大作用,也对国民经济发展起了很多作用。

第三类应用,自然语言处理。包括搜索与推荐、人工智能接口。这一类问题应该是我们当前人工智能应用里面最重要说的最时髦的一句话、最多的一句话。它是怎么一回事呢?我举四个例子看看。第一个语言翻译。就是基于人工智能这个语言翻译,中文翻译成英文,英文翻译成中文,他会基于自然语言处理模型会翻的很快,翻的很准。第二个,自动回答。我们希望有一台计算机,你问它什么问题它都能问答,我们就想象智能机器人要做的非常复杂,非常聪明才行。第三个生成文本摘要,你给他一篇文章,他就把你三句话的摘要写出来了。

第四个创作。什么意思?你给机器三句话,他能写成50集的电视连续剧。

我们看,这就是在自然语言处理模型能做的事情,我们说的这个应用很复杂,很想要这些应用,但是要给予自然语言处理,需要有大的机器。因此AI正快速向更大模型发展,自然语言处理模型参数量的增长,三年时间提高1.6万倍。因此我们说,大模型训练需要大规模的系统,它的数据和数据量很大,需要的机器也很大,有一个说法差不多,每3.4个月计算量要翻一番,这比摩尔定律18个月翻一倍要快很多。因此我们说,AI算力很重要,这是我说的第一个部分。

第二个我讲讲AI算力的基础设施究竟什么样子。就是AI机器长的什么样子。

我们先说说,我们过去传统的HPC,叫高性能计算机群,跟我们现在AI的机器还是有不同的。我们先看,传统的科学计算他是科学和工程计算,做什么事情?天气预报、核武器模拟、飞行器设计,就这些问题。他是需要这台机器特别会双精度浮点运算,就是128位的两个数做加减乘除,要算的快,这么一个要求。因此编程也是MPI+fortran+C,指标HpI,hpcg,这是传统科学计算,我们国家在传统科学高性能机器上已经发挥了很好的作用。

最近几年出来了一种叫AI机器,就专门做人工智能问题的机器。我们看,分类、回归、自然语言处理,这些东西,比如安防、互联网搜索推荐、金融风控、智能制造都有遇到这个问题,它的运算精度怎么样?是半精度浮点运算或者低精度整数。它的算法,两个8位数相加就可以了,或者16位数相加,最多32位数相加,跟我们刚才说的传统的科学计算有128位两个数相加要做的快,这两个8位数加或者16位数加,两个很不一样,因此我们编程的框架也不一样,指标也应该不一样。

这是我说两类机器很不一样,因此我们说,传统的科学计算系统就是HPC了,以传统的CPU比如X86等等这个为主的,它的目的就是让128位两个数加减乘除做的快。现在又出来了AI计算机,就专门做AI用的计算机,叫AI HPC。这类机器它的CPU不是传统的X86,而是AI专用的计算系统,专门做AI用的芯片,以AI芯片为主的。因此我们说,当前的算力,这两个部分是很不一样的。传统的科学计算以结构化为主,高性能低延迟,双精度数值计算,以及常规的访问。AI专用的智能计算系统,它的数据非结构化为主,高并发、高吞吐率、低精度的张量计算,访存的高带宽。因此这两台机器很不一样。

现在问题是,最近一两年开始,这两台机器在融合。也就是说希望有做出一台机器,既能做传统科学计算,又能做人工智能计算。我们说,希望把这两台机器融合在一起,变成叫融合计算。国内外现在情况,美国也好,日本也好,应该大幅领先我们。我国这方面,融合的计算机,就是一台机器既可以做传统科学计算,又要做人工智能计算,我们还属于空白,因此我们要做这件事。

我们看,这两种机器我刚才说了,实际上两者都由四个东西组成:处理器、内存、外存、互联网络。这四个东西里面最大的差别——处理器,一个是通用CPU X86,一个是专门做AI运算的AI芯片,因此很不一样。我们说,这两种机器最大的差别,还是算力的处理器。我刚才说了,一个是做128位的加减乘除要快,一个有可能做8位或者16位的加减乘除要快,因此还是很不一样。

我们说,HPC跟AI融合的需求与可能性。我们国家现在还没有,我们看有没有可能。

第一我刚才说了,HPC跟AI尽管有不同点,但是对访问内存、高性能网络和外存的需求是类似的,这两个机器有不同的地方,也有很多相同的地方,特别是访存、高性能网络还是相同地方。

另外一个,不同精度的计算单元如果能在一定程度复用,就可以在处理器层面同时支撑。什么意思,刚才说了128位的加减乘除,一个是8位、16位的加减乘除,我们说有没有可能把这两个东西复用起来,既可以把它用上,那也是可以的。

第三,最近几年出了一个情况,AI for Science的出现,叫人工智能为科学服务,使得HPC程序中也包含AI的算法,就是传统科学计算里面也出现人工智能的算法,因此HPC+AI的融合成为刚性需求

就是说,原来传统的计算做天气预报、做核武器模拟、做飞行器设计,就是传统的算法,但是最近两年出现了AI算法,就是传统的算法里面也出现了人工智能的算,因此HPC+AI的融合成为刚性需求。就是原来传统的计算做天气预报做到底就可以了,但现在做着做着有没有可能人工智能算法把它加进去,这么一来就是人工智能融合到传统的HPC去,成为刚性需求。

我们高性能机器的应用方面有一个奖叫戈登贝儿奖,应该说五年前,怎么样能获奖?基本上是做传统科学计算,做128位的加减乘除要做的快,要解决这个问题。但最近两三年以来,戈登贝儿奖的获得者,基本上是把传统科学计算加人工智能算法这两个结合在一块,使得一般传统科学计算问题解决得更快更好。

我们说,从历史上来看,比如说浮点运算在90年代初的时候,X86还是可选件,后续就整合进入了通用CPU。HPC和AI系统过去是分离的,HPC一套机器,AI一套机器。比如说我们国家的神威机器、天河机器,包括国外的一些机器。这里特别要讲一下鹏城实验室,深圳鹏城实验室又叫云脑Ⅱ ,这是专门做人工智能处理问题的机器,不能做传统科学计算。他有4096款卡,专门做人工智能芯片的卡,它的速度也挺高,半精度1E  FLOPS,双精度1P  FLOPS,我们看看它主要是1E  FLOPS,E很快很快了,它进入的比较快,因此这台机器主要做人工智能问题。

我们说鹏城实验室云脑Ⅱ是专门做人工智能处理的一台机器,它处理人工智能速度很快,1E  FLOPS。但是它做128位的浮点运算数就相对慢一些。我们希望半精度机器和AI机器和HPC机器,两个128位计算能力跟8位、16位的处理器正好有一个匹配,不要这个很快,另一个比较慢,有一个匹配的问题。

未来,过不了几年,我预测HPC跟AI融合的体系结构就会出来,一台机器既做传统的科学计算,又可以做人工智能的应用问题

那么这种机器的处理器应该什么样子呢?当然也有可能是同构的、异构的。同构的话,既够双精度又要低精度计算,就是说双精度的要快,低精度的也要快。而内存大容量的片上的封装,存储器要有全局的、共享的持久存储。网络方面也是,数据平面网络加到参数平台网络,低延迟的RDMA。因此我们说,处理器层面我们要考虑这件事,比如多精度计算,多精度意思就是,既会处理8位的,又要处理128位的。

第二,存储系统要本地高性能的分布式文件系统,还有本地的SSD高性能存储器。存储系统里面,不但有存储系统本身还有文件系统。算法也是,这个机器8位的很行,16位也行,128位也行。我们要把一个问题想办法进行混合精度算法,就是说把一个问题想办法,有的是8位做,有的16位做,有的32位做,有的128位做,这就是混合精度的算法。你的算法要把它都利用起来,包括大规模的训练,还有我刚才说AI for Science,因此我们说以后HPC加AI加Big Data是一个方向。

具体来说就是多精度的计算单元,融合架构的一个大问题,就是执行单元太多,你不能说这里面有一个双精度浮点运算,又有8位的又有16位的,一大堆硬把它拼在一块,这是不行的。我们要把它融合,既要支持多个半精度,又要支持双精度,所需要面积就太大了,怎么把它融合?我们说把它复用,还有包括计算里面的问题,你一个问题来了,我们有没有可能先让低精度算,等到低精度算完再让高精度算,这也是一个办法。因此我们说,包括我们高性能的分布式文件系统,传统的HPC与人工智能计算,它的存储结构不一样,现在不但存储结构有不一样,还有高性能分布式文件系统也必须做好它。

刚才说了,混合精度的算法,我们想办法混合精度,有可能你写程序的人要考虑,我们做编译系统的也要考虑,想办法总结出来。一个问题来了,把低精度的运算用到了,把高精度运算也把它重复用上,这样再把机器用起来。

我们在以后最重要的典型应用就是大模型训练,自然语言处理大模型。包括到100万亿参数的跨媒体的预训练模型。另外一个就AI  for Science,这是一个比较重要的应用,就是说以后的科学计算问题,也可以用到AI的算法,传统科学可能算的慢一点,算出来的精度也差一点,我们现在传统的加上AI的把它算得快,还算得准。

因此我们从这个角度来说,以后我估计未来两年或三年,会出现一种机器,既可以做传统的HPC,又可以做AI 人工智能的问题。把这两个结合在一起的机器,我估计两年三年以后在我们国家就会出来。我们正在做,从芯片开始,存储器到了有关的相关软件,希望这台机器早一点出来,既为我们HPC服务,又为我们AI服务,使得HPC的问题做的更好,也使得AI的问题做得更好,意识到HPC加AI融合的计算机体系结构非常重要。

我今天就讲这些内容,希望大家有一点感觉,有点体会,谢谢大家!请大家批评指正。


—END—


点击下方名片


即刻关注我们

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存