RemoteRobot

 找回密码
 立即注册
查看: 202|回复: 2

一种基于人工智能大模型算力需求的计算存储优化

[复制链接]

26

主题

5

回帖

182

积分

管理员

积分
182
发表于 2023-3-27 10:15:26 | 显示全部楼层 |阅读模式

26

主题

5

回帖

182

积分

管理员

积分
182
 楼主| 发表于 2023-4-10 10:30:40 | 显示全部楼层
目前很多公司,因为云计算技术的使用,以及运维责任的拆分,将CPU、内存计算资源云化;将存储单独管理。这种模式在以OPenAI为首的gpt-3等大模型训练之下,存在诸多瓶颈:存储频频告警,数据传输带宽低,效率受阻;同时公司内部因为已有的技术架构、管理架构原因,很难做出改变。
根据本人遇到的问题与试图改变方案,写此文,部分计算数据可能不准确。

一、目前可用存储类型介绍
影响存储的两大因素:带宽与IOPS。在HDD时代,IOPS非常低,一个7200RPM机械硬盘IOPS介于75-100之间,而进入SSD时代,SATA SSD硬盘的IOPS瞬间提升到四位数字,目前主流NVMe SSD的IOPS普遍达到了六位数字,普通值70万。
第一层优化:文件系统。目前的大多数文件系统,如XFS/Ext4、GFS、HDFS,在元数据管理、缓存管理等实现策略上都侧重大文件。上述基于磁盘I/O特性设计的系统都有一个共性特点就是都运行在这些文件系统之上。这些文件系统在面临海量时在性能和存储效率方面都大幅降低。
1、腾讯CFS
吞吐随文件系统容量线性扩容,最大40GB/s,最大 IOPS 60K(4KB大小文件随机读写)因为存储与计算分离,瓶颈在网络,大概是1-6G/s是极限。与硬盘sas、ssd、nvme类型有关系。
2、腾讯COS
腾讯云COS与阿里云的OSS都是提供对象存储的服务,主要用于cdn分担服务器带宽。本质是混合存储,背后是CBS、CFS等存储方式。
3、Hdfs
HDFS被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统(Distributed File System)。是一个高度容错性的系统,HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS放宽了一部分POSIX约束,来实现流式读取文件系统数据
4、GlusterFS
新兴软件,性能优异,缺少工程化不间断应用经历。
5、Ceph
Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统.Ceph 最近加入到 Linux 中令人印象深刻的文件系统备选行列,值得尝试。
6、阿里TFS
淘宝针对海量非结构化数据存储设计出了的一款分布式系统,叫TFS,它构筑在普通的Linux机器集群上,可为外部提供高可靠和高并发的存储访问。可作为备选。
二、交换机与线缆:
交换机比如MQM8700-HS2F交换机,每个网口能达到200Gb/s,MFS1S50-H003E线缆:光缆,速度可达200Gb/s,一拆二后每个口可达100Gb/s。
三、计算节点:
GPU裸金属主机情况:内部GPU卡之间通过NVLink互联。最高传输速度 在50GB-200 GB/秒。智能网卡目前一般为HDR100或更优系列,一般为100Gb/s。可见主机内部传输速度已经很高。
以128TB GPT-3模型为例,使用128台AP服务器,每台4个V100-GPU,共计512个V100 GPU为例。如果将通信耗时压缩到训练耗时5%以内,需要节点内通信带宽>130GB/s,节点间通信带宽>12GB/s,总节点间带宽>40GB/s.这在目前的交换机中单个网口是无法实现的,只能通过多个网口并行实现。
四、大数据模型环境准备:
大模型训练有2个必须考虑的硬性影响:
1、所有源数据文件,包括文本信息、图片信息,基本上都是小文件,对IOPS非常敏感。
2、训练任务的临时写入。
考虑到硬盘带宽、单个网卡带宽(100Gb/s)、交换机带宽(200Gb/s)、交换机出口带宽(最大200Gb/s),尽量全部采取打散分布式组合:所有组合都将采取存储网与计算网合一的模式,试图去除存储网络与计算网络交互的网络连接瓶颈。
计算集群节点
计算集群组织方式
存储集群节点硬盘
单块硬盘带宽信息
单块硬盘IOPS信息
备注
存储方式优缺点
GPU裸金属主机
Kubernets
SAS硬盘
200MB左右
200以内
4K随机读写:90K
相对便宜,读写小文件性能差
GPU裸金属主机
Kubernets
高速SSD
1-2GB/s
140k
4K随机读写:200K
价格适中,读写性能一般
GPU裸金属主机
Kubernets
NVMe-SSD
2-3GB/s
700k以上
4K随机读写:700K
价格高,对主机要求高,读写性能最优
每个GPU裸金属主机,一般最多携带4块硬盘,其中还需要包含主机操作系统等占用最少150G系统盘+300G数据盘,剩下的余量用于组建存储集群。通过硬件基本信息可看出,SAS因为单块硬盘的低IOPS,在处理小文件方向存在较明显劣势,若预算许可,尽量不选用。
存储组织方式
存储集群节点硬盘
总带宽信息
总IOPS信息
是否推荐
备注
CFS
SAS硬盘
吞吐随文件系统容量线性扩容,腾讯云cfs可做到最大40GB/s ,总量不能超过交换机单口200Gb/s
吞吐随文件系统容量线性扩容,腾讯云cfs可做到最大 IOPS 60K(4KB大小文件随机读写)
若文件单个大小在2M以内,不推荐,读取极慢

高速SSD

NVMeSSD
推荐。目前读取小文件的最佳载体

HDFS
SAS硬盘
吞吐随文件系统容量线性扩容,带宽为所有数据节点聚合带宽;理论上聚合带宽可超过交换机单口带宽
聚合数据节点iops,根据3副本理论,除3
节点超过300可以考虑

高速SSD

NVMeSSD
推荐。目前读取小文件的最佳载体
未确定NVme是否受hdfs协议影响
Minio/FastDFS
SAS硬盘
吞吐随文件系统容量线性扩容,带宽为所有数据节点聚合带宽;理论上来说,聚合带宽可超过交换机单口带宽
聚合数据节点iops
若文件单个大小在2M以内,更推荐FastDFS
需要java客户端写脚本配合
高速SSD

NVMeSSD

COS
SAS硬盘
上行和下行可做到共享15Gbit/s,
因归属腾讯,不太建议选用
根据cos对外提供协议来看,应该类似于cfs存储,也属于整合节点iops

COS对外提供iSCSI、NFS和CIFS/SMB访问协议,私有化部署存在问题
高速SSD

NVMeSSD
推荐。目前读取小文件的最佳载体
Ceph


实用较少,有较大工程风险,性能优异
TFS


淘宝开源项目,可据信息不多

结论:
通过对存储集群采取CFS、HDFS、FastDFS、COS、Ceph、TFS等方式组合对比,可发现硬件存储建议采用SSD,最好是NVMe-SSD,单条容量1T以上,每个GPU裸金属主机安装4条。
软件格式可采用CFS(效率可能无法达到要求)、HDFS、FastDFS、TFS(需验证)、Ceph(需验证)方式。
计算与存储放在相同批次GPU裸金属主机,交换机采用ib网络交换机,目前是最优选择。

26

主题

5

回帖

182

积分

管理员

积分
182
 楼主| 发表于 2023-4-10 10:32:35 | 显示全部楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Machine AI ( 京ICP备2023006562号 )

GMT+8, 2024-6-29 10:59 , Processed in 0.442519 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表