近日,AI这家虚拟化AI基础架构的公司,发布了第一个分数GPU共享系统,用于Kubernetes上的深度学习工作负载。分数GPU系统特别适用于诸如推理之类的轻量级AI任务,透明地使数据科学和AI工程团队能够在单个GPU上同时运行多个工作负载,从而使公司能够运行更多的工作负载,例如计算机视觉,语音识别和在同一硬件上进行自然语言处理,从而降低了成本。
对于深度学习工作负载而言,当今事实上的标准是在Kubernetes精心安排的容器中运行它们。但是,Kubernetes只能将整个物理GPU分配给容器,缺乏使GPU资源共享而不会发生内存溢出或处理冲突所需的隔离和虚拟化功能。
运行:AI的分数GPU系统有效地创建了虚拟化逻辑GPU,具有它们自己的内存和计算空间,容器可以像使用独立处理器那样使用和访问它们。这使多个深度学习工作负载可以在同一GPU上并排运行在容器中,而不会互相干扰。该解决方案是透明,简单和可移植的。它不需要更改容器本身。
为了创建分数GPU,Run:AI必须修改Kubernetes的处理方式。“在Kubernetes中,GPU是作为整数处理的,” Run:AI的联合创始人兼CTO Ronen Dar博士说。“您要么拥有一个,要么没有。我们不得不将GPU变成浮动的,以便将一部分GPU分配给容器。” Run:AI还解决了内存隔离问题,因此每个虚拟GPU都可以安全运行,而不会发生内存冲突。
一个典型的用例可以看到在同一GPU上运行2-4个作业,这意味着公司可以使用相同的硬件完成四倍的工作。对于某些轻量级工作负载(例如推理),容器中运行的8个以上作业可以舒适地共享同一物理芯片。
增加部分GPU共享是Run:AI创建真正的虚拟AI基础架构的使命的关键组成部分,结合了Run:AI的现有技术,该技术可弹性地将工作负载扩展到多个GPU上并实现资源池和共享。
“推理任务等某些任务通常不需要整个GPU,但是所有那些未使用的处理器周期和RAM都会浪费掉,因为容器不知道如何仅占用一部分资源,” Run:AI co -创始人兼首席执行官Omri Geller。“ Run:AI的分数GPU系统使公司能够释放其硬件的全部容量,从而可以更快,更有效地扩展其深度学习。”