微软详细介绍了“星球级”人工智能基础设施,包括100000多个GPU

2022-02-25 11:00:40

微软透露,它为人工智能工作负载提供了一个星球级的分布式调度服务,并适度地将其命名为";奇点";。

在一篇由26名微软员工合著的新闻稿[PDF]中描述,Singularity';该公司的目标是通过提高深度学习工作量的利用率,帮助这家软件巨头控制成本。

奇点实现了这一目标,论文称之为";新颖的工作负载感知调度器,可以透明地抢占和弹性地扩展深度学习工作负载,从而在不影响其正确性或性能的情况下,在全球人工智能加速器(如GPU、FPGA)车队中实现高利用率"

这篇论文花在调度器上的时间比在奇点本身上的时间要多,但确实提供了一些数字来描述系统#39;中国的建筑。奇点分析';s的性能提到了在Nvidia DGX-2服务器上的测试运行,使用了Xeon Platinum 8168,带有两个每个20核的插槽,每台服务器八个V100型号GPU,692GB的RAM,并通过InfiniBand联网。奇点车队中有数十万个GPU,加上FPGA和其他加速器,微软至少有数万台这样的服务器!

本文主要研究奇点#39;它声称,这是它的秘密,因为它们降低了成本,提高了可靠性。

该软件自动将作业与加速器资源分离,这意味着当作业向上或向下扩展时";我们只需更改工作人员映射到的设备的数量:这对用户来说是完全透明的,因为无论运行该作业的物理设备有多少,该作业的世界大小(即工作人员总数)都保持不变"

那';多亏了";一种称为副本拼接的新技术,可以在同一设备上对多个工作线程进行时间切片,开销可以忽略不计,同时使每个工作线程都能使用整个设备内存"

实现这一目标需要作者所说的a";设备代理";那";在自己的地址空间中运行,并与物理加速器设备一一对应。当作业辅助进程启动设备API时,它们会被拦截,并通过共享内存发送到在单独地址空间中运行的设备代理进程,该进程的生存期与辅助进程的生存期分离"

通过以上这些,可以更高效地安排更多的作业,从而使数千台服务器能够在服务中使用更长的时间。它还可以在不中断的情况下快速扩大或缩小规模。

"Singularity在调度深度学习工作负载方面取得了重大突破,将弹性等利基功能转化为主流功能,始终依赖于调度器可用于实施严格SLA的功能,";本文得出结论。

遗憾的是,这篇文章没有提到微软';公司自己的研究或技术被公开分享,但确实给公司带来了光明#39;这是人工智能行动。®