Amazon web services 私有云GPU虚拟化类似于Amazon Web Services群集GPU实例

Amazon web services 私有云GPU虚拟化类似于Amazon Web Services群集GPU实例,amazon-web-services,cuda,cloud,gpgpu,openstack,Amazon Web Services,Cuda,Cloud,Gpgpu,Openstack,我正在搜索支持基于云的动态NVIDIA GPU虚拟化的选项,类似于AWS为其分配GPU的方式 我的项目是建立一个内部云。一个要求是能够将GPU分配给虚拟机/实例以进行服务器端CUDA处理 南加州大学似乎正在努力支持这一点,但它还没有准备好。如果它在OpenStack中功能齐全,这正是我想要的 似乎只支持将GPU分配到,这是严格意义上的远程桌面GPU虚拟化。如果我错了,并且VGX确实从虚拟机/实例启用了服务器端CUDA计算,那么请让我知道 “基于云的动态NVIDIA GPU虚拟化类似于AWS为群集

我正在搜索支持基于云的动态NVIDIA GPU虚拟化的选项,类似于AWS为其分配GPU的方式

我的项目是建立一个内部云。一个要求是能够将GPU分配给虚拟机/实例以进行服务器端CUDA处理

南加州大学似乎正在努力支持这一点,但它还没有准备好。如果它在OpenStack中功能齐全,这正是我想要的

似乎只支持将GPU分配到,这是严格意义上的远程桌面GPU虚拟化。如果我错了,并且VGX确实从虚拟机/实例启用了服务器端CUDA计算,那么请让我知道

“基于云的动态NVIDIA GPU虚拟化类似于AWS为群集GPU实例分配GPU的方式。”

AWS并不真正动态分配GPU:每个GPU集群计算有2个固定GPU。所有其他服务器(包括常规群集计算)都没有任何GPU。也就是说,他们没有可以说“GPU与否”的API,而是固定为使用固定硬件的box类型


Xen上的直通模式是专为您的用例而设计的:通过主机向来宾传递硬件。默认情况下,它不是“动态”的,但您可以编写一些代码,选择一位来宾在主机上获取每张卡。

有一种称为GPUBox的解决方案,可以虚拟化CUDA中的设备。它既可以在Amazon上使用,也可以在您自己的基础设施上使用

引自网站():

GPUBox软件通过分离 来自底层GPU设备的应用程序和操作系统。信息技术 是一个解决方案,允许从 相同的池,由许多用户使用。(…)GPUBox支持按需资源调配 将GPU设备连接到具有Linux或 Windows操作系统。GPU设备池在所有用户之间共享 用户,从而降低总功耗和 闲置运行的硬件


可以使用将GPU分配给虚拟机。然而,这是一个不平凡的设置,并且在所有的可能性中,它的操作有许多粗糙的边缘。必须在启动VM之前完成分配。实际上,它是GPU到虚拟机的1:1映射,您不能以这种方式(使用PCI直通)在多个虚拟机之间同时共享单个GPU。@Robert Crovella-谢谢。我真的很想找到能与云管理工具更无缝地集成的东西,但有一个可能的选择至少是一个开始。我将不得不调查是否有完整的CUDA API。@Robert Crovella很合适,但是如果你打算在Xen上试用它,那么有几个先决条件:CPU必须有Intel VT/d或AMD IOMMU(现在不太可能有问题),GPU“启用”VT-d/IOMMU直通支持(NVIDIA似乎称之为多操作系统)-这几乎意味着M系列Teslas和Quadros,Xen 4.1(可能是更高版本?)可能需要一段时间,但我可能会关注这一点。到目前为止,计划是测试新的开放堆栈测试版,其中包括USC的GPU虚拟化蓝图。当我最初问这个问题时,这个问题还没有解决。它计划在4月份发布。我将报告我的发现。如果这是一个HPC用例,您可以考虑利用OpenStack物理层配置。集群GPU实例仍然是Xen管理程序之上运行的一个VM,对吗?所以当一个实例停止时,您可以将它使用的GPU重新分配给一个新实例,对吗?当任何一个VM都处于打开状态时,您都不能进行分配,但这很好——您仍然在动态地将GPU资源分配给VM实例。我说的对吗?是的,它在Xen下运行。但不,您不指定它们:AWS指定。当你要cg1.4XL时,你会在不同的机架上得到一个盒子,因为他们有GPU,而其他盒子没有。最可能的情况是,它们静态地将GPU映射到实例,因为每个实例必须有2个GPU。