0

Loading ...
2022 03

计算:语言及语义

asc Supercomputer Competition

Share Project:

赛事简介

在ASC22初赛中,所有队伍需要完成两道极具挑战性的尖端应用赛题,分别是“源”AI语言大模型和AI+Science代表性软件DeePMD-kit。
2022年的AI赛题聚焦当前业界前沿AI大模型。“源”是2021年发布的一个面向中文的巨量语言模型,参数量达2457亿,刷新了业界多个中文榜单的记录,且在众多的语言处理任务场景中表现出了广阔的应用前景。AI大模型的训练面临着计算量和并行策略设计的双重挑战,因此也是参赛队展示超算性能优化能力的绝佳试验场。ASC22组委会提供了100GB的高质量中文数据集,要求参赛队基于这一数据集实现一个47亿参数的小号“源”模型。值得一提的是,组委会并没有提供模型设计的参考代码,这意味着参赛队需要自行完成模型结构构建和全部训练过程,并合理设计模型训练策略,以期得到最佳的计算性能。

DeePMD-kit赛题将引导大学生进行一场人工智能+科学研究(AI+Science)的前沿探索。科学研究与人工智能结合被视为当前最值得期待的创新趋势之一,机器学习分子动力学DeePMD-kit的出现成功推动了相关领域的跨越式发展。而高性能计算的加入将机器学习分子动力学的潜力持续释放:DeePMD-kit在超级计算机顶点(Summit)上达到了双精度91P的峰值性能,到解时间快于之前基线水平1000倍以上,相关成果获得了2020年戈登·贝尔奖。可以说DeePMD-kit的出现定义了科学研究+机器学习+高性能计算的新范式。本次赛题聚焦DeePMD-kit的训练效率优化,通过高性能优化提升训练速度对于用户来说至关重要。参赛选手将对DeePMD-kit的模型构建过程有一个直观认识,并可以使用高性能优化的手段优化整个训练过程。

ASC 世界大学生超级计算机竞赛是由中国发起组织,并得到亚洲及欧美相关专家和机构支持,旨在通过大赛平台推动各国及地区间超算青年人才交流和培养,提升超算应用水平和研发能力,发挥超算的科技驱动力,促进科技与产业创新。ASC超算大赛迄今已举行至第十届,吸引超过万名世界各国大学生参赛,是全球最大规模的超算竞赛。

  • 时间
    2022 03
  • 人员 JGQ. DJ. JCH. RXY
竞赛官网 asc-events.org

集群搭建

该集群的计算性能估算如下(FP32): CPU:2.5 GHz(4215处理器基础频率)* 8(8个核心)* 2(2个处理器)* 1 * 2 * 512(AVX-512 FMA单元数,1个,最多支持2个FMAs)/ 32位 * 4(4个计算节点)= 5120 GFLOPs = 5.120 TFLOPs;

GPU:19.5 TF(峰值FP32)* 8 = 156 TFLOPs;

总计:161.120 TFLOPs;

节点配置与HCG性能测试

使用单个CPU节点,该节点的配置如下:
Intel(R) Xeon(R) Platinum 9242 CPU@2.30GHz,96个核心, 384GB DDR4 ECC REG内存;
InfiniBand QDR 100Gbps高速网络;

经过数次调整和优化,测试节点的最佳性能为4167.0 GFlops

详细硬件配置如下表所示:

Hardware resources
Item Name Configuration Num
Server Inspur NF5280M5 Intel® Xeon® Silver 4215 Processor 2.5GHz 8 cores x 2
Memory: 32G x 4,DDR4,2933Mhz
Hard disk: 480G SSD SATA x 1
Power consumption estimation: 4215 TDP 85W, memory 12W, hard disk 7.5W
5
HCA card InfiniBand/VPI Card ConnectX®-5 VPI adapter card, FDR/EDR IB (100Gb/s) and 40/50/100GbE
dual-port QSFP28
PCIe3.0 x16, tall bracket
Power consumption estimation: 18W
5
Switch GbE switch 10/100/1000Mb/s,24 ports Ethernet switch
Power consumption estimation: 30W
1
EDR InfiniBand Switch SB7800 InfiniBand EDR 100Gb/s Switch System
36 QSFP28 non-blocking ports
136W typical power consumption
1
Cable Gigabit CAT6 cables CAT6 copper cable, blue, 3m 5
InfiniBand cable Mellanox® MCP1600 -E0xxEyy direct attach copper (DAC) cables,
100Gb/s QSFP28 port IB EDR, 3m, Black, 26AWG
5
GPU NVIDIA V100 SXM2 NVIDIA NVLink 600 GB/s** PCIe Gen3.0
MEMORY:16GB HBM2
BANDWIDTH:1,133 GB/s
Max TDP Power:250W
8
软件配置:
Software resources
Item Name Version
Operating system Ubuntu 18.04
cluster workload manager Slurm 20.11.2
Translater mpicc, mpic++, nvcc (Corresponding to the version of the package)
icc 2017.5.239
Math library Intel mkl 2017.0
Fftw 3.3.8
MPI OpenMPI 4.0.2
intel-mpi 17.0.5
GPU-accelerated application CUDA toolkit 10.1
Message Passing libraries ucx 1.8
GPU memory copy library gdrcopy 2.0
功耗:
Name Power consumption
Inspur NF5280M5 (85w * 2+ 12w + 7.5w) * 3
NVIDIA V100 SXM2 250w * 8
GbE switch 30w
EDR InfiniBand Switch 136w
InfiniBand/VPI Card 18w * 4
Total:2807w

HPCG&HPL性能测试

Processor Dimensions:npx = 4,npy = 4,npz = 6 ;

Local Domain Dimensions:nx = 16,ny = 16,nz = 16 ;

运行时间:1800秒 ;

经过多组数据测试,我们认为进程数量会影响处理器维度,进而显著影响结果。同时,当Processor Dimensions为偶数时,得到的结果会更好。 例如,使用16个进程和28个进程,进程数量的差异较大,但结果相似; 32个进程和56个进程也有类似的特点。

而Local Domain Dimensions的选择对结果影响较小。

HPCG的默认运行时间是60秒,官方推荐的最小运行时间是1800秒。经过多组测试,1800秒是最佳运行时间。

结果如下:

Yuan大语言模型

首先,我们尝试使用Megatron-LM框架进行预训练,这带来了一个问题:传统Transformer中正常(softmax)注意力的时间复杂度是O(𝑁2), 这意味着我们需要花费数百个小时来完成10亿tokens的训练。

所以我们引入了Performers,一个Transformer变种,可准确近似传统softmax注意力机制,且只使用线性(而非二次)的空间和时间复杂度, 而避免过度依赖先验知识,如稀疏性或低秩性。

在Performers中,我们使用了一种新的方法,即正交随机特征,用于对传统softmax注意力进行稳健且无偏的估计。 新的计算方法将理论时间复杂度从O(𝑁2)降低到O(𝑁)。实际上,我们只用了30个小时就完成了整个训练,比原来缩短了三分之一的时间。

可以清楚地看到,在训练的前10亿token阶段,训练损失迅速下降,并持续继续下降。此外,ppl(困惑度)指数也从一千降至不到七十。

这显示了训练模型的有效性,随着训练的进行,模型对数据的拟合效果越来越好,损失逐渐减小,同时模型的预测能力也得到了显著的提升。