在VMWorld2019开始前,NVIDIA宣布将针对人工智能、学习训练和数据分析的需求创建名为vComputeServer的应用服务,并将集成NVIDIAAGPUCloud、NGCContainers甚至GPU加速平台RAPIDS内部资源被纳入VMware和AWS的云服务——VMwareCloudonAWS,让更多的科学研究、数据分析和人工智能技术应用可以通过虚拟化GPU进行加速。
与以往通过云端进行的协同计算相比,由于云服务中使用的CPU计算阵列的性能限制,计算性能很可能不如预期,甚至可能无法应对日益增长的海量数据的数据需求。因此,NVIDIA在VMWrold2019上与WMware合作,将GPU虚拟化应用带入VMware提供的服务中,包括将一个名为vComputeServer的应用服务集成到VMware提供的vSphere中,同时也连接NVIDIAGPU云计算资源。
在此次合作中,原本使用vSphere虚拟化平台的计算模型将能够连接GPU计算资源,使得vSphere平台生成的虚拟机可以配备个或多个虚拟化GPU。同时,通过利用GPU加速整体计算效率,可以大大提高人工智能学习和研究分析的有效性。此外,通过此次合作,用户将能够以更灵活的方式使用GPU加速计算资源,而无需自行构建GPU加速资源。
相比一些企业在自有数据服务器上集成GPU加速资源来提高整体计算效率,不可避免地要承担建设和维护成本,仍然可以面对计算的增长规模化,必须有更大的数据性能的支持。因此,NVIDIA在2017年提出了NVIDIAGPUCloud服务,声称可以连接GoogleCloud、AWS、阿里云、DGX、OracleCloud等云平台,帮助推动更大的计算规模,减少计算所需的时间。通过GPU虚拟化进行计算。
在今年的GTC2019期间,NVIDIA还提出了全新的CUDA-XAI加速计算平台,该平台采用Turing显示架构和TensorRT计算框架,并兼容TuringTensorCores设计,通过推广人工智能不同的计算模型,NVIDIA强调可以提供50倍以上的加速计算效果,为人工智能计算应用提供更大的增长动力。
本次发布增加了对vSphere、vCenter或vMotion的支持,这将把用户的GPU加速需求从自己的服务器通过NVIDIAGPUCloud连接到VMwareCloudonAWS,从而使NVIDIA的GPU虚拟化技术能够使用在更广泛的领域,除了用于科学研究、数据分析或人工智能之外,还可以加速分布在云端的现代应用服务的运行。
NVIDIA解释称,过去曾投入深度开发GPU虚拟化技术,比如早期采用GRID技术构建的虚拟化PC,以及后来的虚拟化工作站,让GPU虚拟化可以用于更多领域专业绘图的应用程序甚至支持专业数据分析、机器学习、人工智能、深度学习或超级计算领域的应用程序实时连接和集成。
与使用CPU阵列加速方式相比,GPU加速可以将深度学习的效率提升50倍以上。它还可以确保数据正确或减少数据比较错误的可能性。通过GPU虚拟化还可以降低企业自建硬件设备的成本,而且NVIDIA还根据计算需求提供使用NVIDIAT4、V100,或者使用QuadroRTX8000、6000和图灵显示架构GPU的选项,甚至可以选择使用Pascal显示使用该架构构建的P40、P100和P60作为GPU虚拟化应用程序工作。
实现GPU虚拟化的方法有很多种通过在GPU硬件层面实现虚拟化来实现多个虚拟GPU。该方法需要硬件支持以及操作系统和驱动程序支持。其优点是性能损失小,但实施起来比较困难,需要设备厂商的支持。
2**基于GPU直通**:该方式允许直接从物理GPU上取资源,并将一部分GPU资源分配给每个虚拟机。这种方法不需要额外的虚拟化软件,但需要BIOS级别的配置以及对底层硬件和操作系统的深入了解。
3使用容器技术:可以使用Docker、Kubernetes等容器技术进行GPU虚拟化。它们提供了一种隔离和分配资源的方法,以便每个容器都可以拥有自己的GPU资源份额。这种方法对于深度学习等需要大量GPU资源的场景非常有用。
4使用NVIDIA容器引擎:NVIDIA提供了一种称为NVIDIA容器引擎(NCE)的专用容器技术。它通过使用NVIDIA的软件套件将GPU资源与容器中运行的应用程序解耦,实现GPU资源的高效可靠分配。
5使用GPU加速的云服务商:很多云服务商都提供GPU加速的云服务,比如GravitonGPU云服务器、GCP的NVIDIAV100等。用户只需购买这些服务即可享受云端的高性能GPU资源。
以上是一些常见的GPU虚拟化实现方法。每种方法都有其优点和缺点,您选择哪种方法取决于您的需求、预算、技术技能和其他因素。同时请注意,每种方法都需要学习和实践才能掌握。建议根据具体情况选择最适合自己的方法。
上一篇:虚拟机硬件虚拟化
下一篇:哪些显卡支持gpu虚拟化