展会信息港展会大全

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷
来源:互联网   发布日期:2020-11-11 09:27:07   浏览:16843次  

导读:金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 在秀算力这件事上,近几年一个叫MLPerf的AI性能基准测试,经常跃入人们的视线。 为了拿这个标准证明实力,英伟达、谷歌等「算力」大厂的表现,可谓是赚足了眼球。 早在2018年12月,也就是MLPerf首次出炉之际,...

金磊 发自 凹非寺

量子位 报道 | 公众号 QbitAI

在秀算力这件事上,近几年一个叫MLPerf的AI性能基准测试,经常跃入人们的视线。

为了拿这个标准证明实力,英伟达、谷歌等「算力」大厂的表现,可谓是赚足了眼球。

早在2018年12月,也就是MLPerf首次出炉之际,英伟达便基于自家Tesla V100,在包括图像分类、物体分割、推荐系统等六项测试中均取得优秀成绩,拿下全场最佳。

而此后,英伟达更是频频刷榜,就在刚刚过去不久的最新性能测试中,英伟达又凭借A100 GPU打破了八项AI性能纪录。

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

谷歌方面也是毫不示弱,凭借4096块TPU V3将BERT的训练时间缩短到了23秒。

对此,谷歌AI掌门人Jeff Dean还在社交平台发文表示:

很高兴看到MLPerf 0.7的结果,谷歌TPU在八项基准测试中,创造了六项纪录。

我们需要(换)更大的标准了,因为我们现在在30秒内,就可以训练ResNet-50、BERT、Transformer、SSD 等模型。

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

那么问题来了,令这些「算力」大厂们竞相追逐的MLPerf这套「考题」,真的是「AI性能基准测试的唯一标准」吗?

不见得。

要达到理想的AI或者高性能计算(HPC)基准测试,具有三方面的挑战:

首先,基准工作负载(workload)需要表示关于硬件利用率、设置成本和计算模式等的实际问题。

其次,基准测试工作负载最好能够自动适应不同规模的机器。

最后,使用简单、较少的指标,就可以衡量AI应用上的整个系统性能。

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

反观MLPerf,正如Jeff Dean所言,它具有固定的工作负载大小,这本身或许就是个错误。

因为增加的算力,应当被用来解决更大规模的问题,而不是用更少的时间去解决相同的问题。

而像LINPACK这样的基准测试,在没有代表性工作负载的情况下,又无法反映AI的跨栈性能。

针对上述问题,清华大学、鹏城实验室、中科院计算所联合推出了一套「中国AI试卷」AIPerf。

简单来说,AIPerf的特点如下:

基于的是自动化机器学习(AutoML)算法,能够实现深度学习模型的实时生成,对不同规模机器有自适应扩展性,并可检验系统对通用AI模型的效果。

通过全新的解析方式计算浮点数运算量,可快速准确的预测AI任务中需要的浮点数运算,以此计算浮点数运算速率并作为评测分数。

那么,中国的这套「AI试卷」具体难度几何?科学与否?

还请各位看官继续品读。

中国的这套「AI试卷」长什么样?

摊开这套「AI试卷」,全貌如下:

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

△ AIPerf基准测试工作流程图

刚才也提到,AIPerf是基于AutoML算法来实现,在框架方面,研究人员选择的是一款较为用户友好的AutoML框架NNI (Neural Network Intelligence)。

但在此基础上,研究人员针对「AI加速器闲置」、「模型生成耗时」等问题,对NNI框架进行了修改。

AIPerf的工作流程如下:

通过SSH访问主节点,收集从属节点的信息,并创建SLURM配置脚本。

主节点通过SLURM,将工作负载并行和异步地分配给对应请求和可用资源的从属节点。

从属节点接收到工作负载后,并行地进行架构搜索和模型训练。

从属节点上的CPU,据当前历史模型列表搜索新的架构(该列表中包含了测试数据集上详细的模型信息和精度),然后将架构存储在缓冲区(如网络文件系统)中,以便后期训练。

从属节点上的AI加速器加载「候选架构」和「数据」,利用数据并行性与HPO一起训练后,将结果存储在历史模型列表中。

一旦满足条件(如达到用户定义的时间),运行就会终止。根据记录的指标计算出最终结果,然后上报。

做完这套「AI试卷」,得到的分数又该如何来衡量和排名呢?

我们知道,FLOPS是当前最常用来反映高性能计算整体计算能力的性能指标。

在这套「试卷」中,研究人员还是用FLOPS作为主要的指标,直接描述AI加速器的计算能力。

在AIPerf中,浮点数运算速率被当作一个数学问题来求解。通过对深度神经网络的分解,对每个部分的运算量进行解析的分析,得到浮点数运算量。

结合任务运行时间,即可得到浮点数运算速率并作为benchmark分数。

理论到位了,实验就要跟上。

硬件规格方面如下:

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

评估环境的详情如下:

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

最后,公布性能结果!

研究人员在各种规模的机器上运行了AIPerf这项基准测试,主要对两方面特性做了评估,分别是稳定性和可扩展性。

从10个节点到50个节点,最多有400个GPU。所有的中间结果,包括生成的架构、超参数配置、每个时间点的精度和时间戳,都记录在日志文件中。

下图展示了用不同规模的机器进行评估的「基准分数」和「规范分数」(单位均为FLOPS),随时间产生的变化。

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

结果表明,AIPerf基准测试具有鲁棒性和线性可扩展性。

接下来,是在不同规模机器下,GPU及其内存利用率的相关评估。

从图中可以发现,AI训练卡整体的计算和内存利用率很高(均大于90%)。在不同模型之间的过渡阶段,由于数据的加载和计算图的编译等原因,利用率会有所下降。

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

为什么要出这套「试卷」?

「浏览试卷」后,就需要思考一个问题:

为什么要出AIPerf这套AI基准测试?

这个问题就需要「由表及里」地来看待。

首先,从表象来看,类似MLPerf和LINPACK基准测试程序,自身存在一些漏洞和问题:

要么工作负载大小是固定的,而算力的增加,应当用来解决更大规模的问题,限制了可扩展性。

要么在没有代表性工作负载的情况下,无法反映系统对AI的跨栈计算性能。

虽然诸如此类的评测标准,目前来看是具有一定的价值和意义,但客观存在的不足也是不容忽视。

毕竟在当前人工智能飞速发展的大环境下,算力显得格外重要,而完备及更加科学的「基准测试」,将有助于算力的发展。

由此看来,「基准测试」和「算力」更像一对作用力和反作用力。

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

其次,从深层意义来看,发展算力,是非常必要的。

对于高性能计算来说,早在1993年便诞生了「TOP500」榜单,从一开始的美国、日本霸榜,到中国算力的崛起,不难看出国家在这项建设中的投入。

原因很简单,高性能计算对于各个国家发展航天事业、石油勘探、水利工程,再到新兴的高科技产业,都起到至关重要的作用。

但伴随着AI的兴起,改变了一往传统高性能计算的「求解方法」AI+HPC才是未来算力的发展趋势。

AI性能基准测试从此有了“中国标准”!英伟达、谷歌可以试试这套算力卷

近年来TOP500榜单,便能体现这一点:

首台登顶榜首的ARM架构HPC,是基于富士通48/52核A64FX ARM。

排名第二的SUMMIT,采用IBM Power+NVIDIA V100。

……

榜单中近30%系统拥有加速卡/协处理器,也就是说,越来越多的系统配有大量低精度算术逻辑单元,用来支撑人工智能计算能力需求。

而在我国,也有越来越多的企业,开始或已经布局其中。

例如华为、浪潮、联想等,均拿出了自家强悍产品,在诸如TOP500、MLPerf等榜单中大显身手。

再从实际应用层面来看,或许你觉得发展算力对平民百姓并没有用,但其实不然。


赞助本站

相关内容
AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港