加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 云计算 > 正文

2019可信云大会丨清华研究生耿金坤:大规模分布式机器学习未来发展之我见

发布时间:2019-07-03 06:24:48 所属栏目:云计算 来源:中国IDC圈
导读:副标题#e# 7月2日,2019可信云大会在北京国际会议中心隆重开幕。2019可信云大会以智能云网边,可信创未来为主题,由中国信息通信研究院主办。 下午13:30大会特设的智能云论坛活动正式开始,MAXP大赛最佳案例获得者清华大学计算机系研究生耿金坤做了《大规模

GPU占用率情况,对于一些经典模型,其实GPU占有率并不会很高,如图想说明的意思是在Batch Size为16个情况下,有大约一半时间GPU的占有率达不到50%,也就是说GPU相当一部分计算资源,硬件算力很高,但用不起来,这是目前机器学习的一个现状。

如果想把GPU占有率提高,只要增加Batch Size不就可以了,但是GPU memory又有问题。如果在数据并行下,Batch Size超过32,达到64,这个GPU m肯定会爆掉。但如果对于模型并行来讲,GPU memory constraints小很多。

负载均衡,模型并行是不如数据并行的。

负载均衡如果没有做好,如何调节负载均衡?就是Straggler问题如何解决,这一点模型并行比数据并行好很多,因为模型并行的负载均衡通过模型迁移实现,数据并行的负载均衡通过数据迁移实现。

I/O扩展性。

不管研究公有云还是私有云,研究机器学习时都在考虑买最贵的卡,买V100,就算给你一张很厉害的卡,算力很强,能否用起来是另一回事。有的时候买一张V100的卡,结果用不起来,相当于白花钱。但能否用起来这个GPU的算力,取决于在运算之前的数据预处理能力能否跟得上算力。根据我们跟微软今年合作的一个项目发现的一个问题,如果想充分利用GPU算力,需要给足够CPU的核技术预处理,否则GPU没有办法被打满。根据实验,基于NVCaffee进行训练,训练AlexNet模型,打满一块Tesla P100 GPU需要消耗-12CPU核,训练ResNet-18,打满P100需要消耗-7CPU核。

如果考虑I/O扩展性,模型模型不如数据并行。

综上所述,这五个方面各有优劣,本次比赛方案考虑数据并行不是最后的答案,模型并行也不是最后的答案,应该考虑混合式并行。

由于不同卷积层Batch Size并不需要一样,所以考虑把卷积层做了一个区分,通过三段式架构更好加速分布式机器学习。

新型加速技术的应用。

AI也好,机器学习也好,有三方面内容要解决:计算、通信、存储。目前存储还不是什么瓶颈,大家都在考虑计算和通信。

有一个很有意思的故事,上周美国凤凰城刚刚结束了高性能领域的学术会议,跟一些专家讨论,专家都是做HTC的,我说到底哪一部分目前是瓶颈?搞HTC的人说通信是问题,通信要好好解决,算力现在增长的越来越快,通信老是不如算力。但是再前一段跟搞网络的人聊,到底通信跟计算哪一部分更重要?结论又变了,通信没问题,我们有的是高性能网卡,实在不行200G网卡马上都要出来了。

大家各说各话,如果往前看一步,我认为通信是问题。以发展的眼光来看,在过去GPU算力提升35倍,但反观通信,五年前是1-10T,现在还是1-10T,再往后走计算还会发展的越来越快,通信很难跟上计算的步伐,由此得出未来想要加速大规模分布式机器学习应该在通信上发力。

新型加速技术的应用。

目前通信的瓶颈主要出现在Linux内核中,想要加速:

1.可以跨过内核,就是英特尔的方案  DPDK。

2.直接把内核处理逻辑下到网卡,也不走内核。

英特尔  DPDK。

优势:跨内核,用户态可以直接操作裸包。

问题:Polling开销,需要用户态实现拆包和封装逻辑。

RDMA。

优势:零拷贝,硬件实现拆封包逻辑。

问题:编程复杂,PFC拥塞控制问题。由于基于PFC,导致现在没有被大规模应用,虽然我们还在不断做改进。

未来发展

分为普适性和异构性。

DML架构和参数同步算法。

1.层次化的架构设计?

2.自适应的拓扑感知算法?

3.Serverless架构下的安全性问题?

这是未来云计算要面临的挑战。

参数同步模式。

1.迭代速度与迭代质量如何折中?BSP、ASP、SSP如何选型?

2.Geo-distributed场景下的参数同步?

3.FederatedLearning。

数据/模型并行模式

1.模块化。大家有一个装箱的过程,现在有多少节点,不可能每个节点进行参数同步,肯定要先分组,然后有效组织。

2.灵活并行度。没有必要一条走到黑。

新型加速技术的应用。

技术本身的革新。大家都在不断改进自己的技术,如果现在拿到就是一个残次品,是否通过改算法来更好使用这个技术,来把现有技术Bug进行规避。

MAXP-2019参赛体会。

非常感谢信通院和各位业界专家给了这么一次机会,本次MAXP大赛主要核心点在于创新性与包容性兼顾。

1.算法赛、FPGA赛、创新赛三个赛道并进。大家有只有喜欢的东西、擅长的领域,都可以在这里找到属于自己的舞台。

2.诸多跨学科作品涌现。本来参赛时以为只有计算机系和软件学院,没想到搞材料、搞生物、搞物理的都来参赛,而且很多作品令人眼前一亮,比如做3D成像的东西。

3.节奏短平快、内容紧张充实。我们比不上黑客马拉松一搞就三天三夜不睡觉,但对于学生来讲正好是符合的,大家可以用更类似敏捷开发的东西,用自己的业余时间每天网上迭代一点,也是挺充实的一件事情。

4.资源支持充分。我们初赛答辩完以后,在一周时间之内,不管百度还是滴滴,都开始跟各位选手进行联系,特别感谢百度云王老师给我提供充分的技术支持和资源支持。

个人建议。

MAXP=MaxPerformance,但本次应用类的作品仍然占主导地位。我认为系统性能层面的作品更值得鼓励,我们不应该只是单纯写300行代码,在我们系统底层有很多更需要解决的问题,怎么去让现有算法做得更快、更高、更强,这比拍脑袋想新的天马行空的东西好很多,这一点从本次结果来看,大赛做了正确的倾向。

愿景。希望MAXP2020年、2021年以及以后的MAXP能够吸引更多优秀的参赛队伍,迸发更多创意的作品;连接落优秀的企业,更好地产学研路线;不断增强在学术圈和工业界的影响力,早日走向国际化,这点并不遥远,前年清华举办过一个智能运维的比赛,去年这个比赛已经和斯坦福进行了合作,变成一个国际性赛事,相信MAXP今后也会成为一个亚洲地区的赛事,甚至国际性赛事,会早日走向国际化。

以上是我的演讲,谢谢!

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读