近年来,人工智能火遍大江南北,全国各地也开始建设人工智能中心,众多媒体也争相报道吹捧。也许是媒体不懂技术,胡乱拿AI集群和超算做比较,在新闻报道中闹了不少乌龙,一些报道堪比造谣,甚至一些官媒也出现了错误报道。事实上,AI集群是剑走偏锋的产物,重视的是半精度浮点运算以及更低精度的整型计算,而超算则是双精度浮点运算,虽然都在媒体报道中都用235P、1000P算力来表示,但两者完全不是一回事。媒体在报道中拿用AI集群的半精度浮点运算算力去对比超算的双精度浮点运算算力,完全就是关公战秦琼,客观上是在变相贬低超算。
关公战秦琼屡见不鲜
今年3月,地方官媒报道武汉人工智能计算中心项目,对该人工智能中心赞美之词溢于言表。
文章中提到:
据介绍,建成后,采用了华为Atlas900AI集群的该中心其AI(人工智能)峰值性能可达100PFLOPS(每秒百亿亿次浮点计算),另外,HPC(高性能计算)峰值性能可达4PFLOPS(每秒四千万亿次浮点运算)。据了解,“FLOPS”参数,中文又叫“每秒浮点运算次数”,是衡量算力的很重要指标。
怎么理解武汉人工智能计算中心百P级算力规模及水平呢?举个例子,我国在2009年成功研发“天河一号”超级计算机,每秒可进行1200万亿次的计算,而如今武汉中心能达百亿亿次,中间提升跨越了两个档位。以天文探索为例,在20万颗星星的星空图中定位某种特征的星体,一个天文学家需要耗费169天,而拥有此算力,定位时间缩短为10秒。未来,工厂里机器协同、医院里电子阅片的反应速度都将大幅提升。
对于该报道,一位专家指出,“其实武汉这台机器的64位浮点计算能力与天河一号接近,甚至低一点。只是低精度性能比较高。千万不要搞错了!!!”
可见,媒体报道中所谓的“我国在2009年成功研发天河一号超级计算机,每秒可进行1200万亿次的计算,而如今武汉中心能达百亿亿次,中间提升跨越了两个档位”是不客观的。64位浮点计算能力更强的天河超算在媒体笔下平白无故被贬低,并以“1200万亿次”和“百亿亿次”的数据差距来显示AI集群吊打天河一号,这可能是天河超算被黑的最惨的一次。
2019年,一篇报道中称:
对包括《XXX新闻》记者在内的媒体透露:“鹏城云脑Ⅱ原型系统现已实现100PFLOPS(每秒百亿亿次计算)的算力。明年,鹏城云脑Ⅱ将达到1000PFLOPS,成为领先的AI研究平台。”而当今世界上最强的超级计算机算力约为235P,1000P算力则相当于50万台电脑的算力之和。
事实上,这篇报道也是扯淡,鹏城云脑原型系统和鹏城云脑Ⅱ所谓的100P和1000P性能都是低精度的,根本不是双精度,而报道中世界最强超算的235P则是双精度浮点运算算力(现在TOP500最强超算是日本富岳,性能513P),这种不谈具体半精度、单精度、双精度,只谈多少P的算力完全是在玩弄文字游戏。
错误报道根源是厂商有意误导
这里说明一下,双精度浮点是64位浮点,可以用来精确存储2^47以内的整数,不会存在任何误差(47这个数字有争议,有说48,52,53等)。单精度是32位的浮点,可以精确的放进一个2^23以内的整数,不存在任何误差。半精度则是16位浮点,精度更低的是INT8、INT4,像单个节点要求的精度不高的应用,比如神经网络往往采用低精度。就FP64双精度、FP32单精度、FP16半精度、INT8、INT4进行性能换算的话,大约是以下公式:
超算的FP64双精度性能=FP32单精度,乘2
超算的FP64双精度性能=FP16半精度,乘4
超算的FP64双精度性能=INT8整型,乘8
超算的FP64双精度性能=INT4整型,乘16
必须强调的是100P双精度性能的超算可以执行FP64、FP32、FP16、INT8、INT4任务,但1000P半精度浮点性能的AI集群无法执行FP64、FP32任务,只能执行FP16、INT8、INT4任务。
换言之,传统超算适用范围更广,而AI集群适用范围相对有限,特别是无法进行科学运算,无法运行超级计算机的普遍应用。
可以说,双精度、单精度、半精度浮点运算在精度上差距是非常大的,拿1000P的半精度浮点算力“碾压”235P的双精度浮点算力,完全就是瞎扯淡。厂商之所对媒体披露“1000P AI集群性能超越235P超算的话术”,本质上就是大忽悠,以至于错误报道层出不穷。
之所以出现这么多错误报道,究其根源是厂商为了推销产品,为了抢占舆论高地,糊弄地方政府和老百姓,故意不把话说清楚。只要营造出AI集群非常厉害,在算力上“吊打”世界最强超算,就能够在舆论上营造出AI集群非常厉害的氛围,进而间接影响民心,影响地方官员决策。因为普通人缺乏专业知识,无从了解什么是半精度、单精度、双精度浮点运算,但1000P比235P要大是都能看懂的,这样一来,面对传统超算厂商时,被错误报道“洗脑”的地方官员就会觉得,“你这传统超算才100P,AI集群都1000P了,传统超算不行,AI集群厉害,上项目就上AI集群”。
事实上,AI集群能做的传统超算都能做,而传统超算做的很多任务,AI集群根本做不了,科学运算只能超算来做,气洞模拟、气象模拟,以及各种尖端科研项目都必须要超算来做,相比之下,AI集群只能做一些与机器学习相关的任务。
就性能来看,AI集群相对于传统超算压根就没有多少优势,诚然,由于半导体技术的进步,厂商在宣传时候可以用2021年的AI集群来“吊打”2016年的超算,但只要和现有超算一对比,AI集群所谓的性能优势就荡然无存了。对于这一点,只要做一个图表就可以发现,厂商和媒体鼓吹AI集群性能优势只是在玩文字游戏。
结语
AI集群与超算的关系类似与专用机和通用机。AI集群的功能只局限于特定的几项机器学习相关的任务,而超算则是“十项全能”。诚然,针对特定任务而言,由于AI集群剑走偏锋,具有“专用”的优势,在性能功耗比上会优于超算。但AI集群只能局限于少数任务,无法像超算那样“十项全能”,而且根本无法做对国计民生至关重要的科学运算。何况现在的超算对AI支持也不弱,特别是超大规模分布式训练等场景,相比专用AI集群具有反而具有明显优势。因此,AI集群是超算的补充,而不是对超算的替换。
长远来看,超算的国之重器地位是无可替代的。