聊聊GPU虚拟化应用

聊聊GPU虚拟化应用

作者:阿飞 2019-01-09 13:20:28

云计算

虚拟化 CPU我们知道,它的全称是中央处理器,是一台计算机的控制核心和计算核心。它的主要功能在于逻辑控制和任务调度。因此GPU较之于CPU,CPU更像是一个公司的CEO,掌管的整个公司的运营和战略,统筹整个公司的工作。而GPU则是某个部门的得力干将,能力强,迅速并超额完成公司交于的任务。

提起NVIDIA,你多半会想起显卡,像我一般年纪的人,对显卡的理解就是游戏加速。上大学时玩实况足球,有个GeForce显卡是一件很幸福的事情,比起主板上集成的显卡,它的存在能够让我们游戏中的草皮更加翠绿,脚下足球更加的行云流水,那时候的实况足球可以实现足球经理人的任何梦想,钞票能买到任何想要的球员。门将圣卡西,后卫由左至右分别是马尔蒂尼、内斯塔、特里、萨内蒂;中场维埃拉、法布雷加斯、小罗;前锋则是梅西、亨利、罗纳尔多;阵容够炫吧!

[[255178]]

随着人工智能的火爆发展,显卡不再是游戏的代名词了,而被冠上了“机器学习心脏”这个高大上的名字。而nvida公司则凭借视觉计算领域的绝对王者地位,3年时间市值***翻了6倍之多。我刚入职人工智能领域时,不理解为什么显卡会成为“深度学习”的依赖,相信很多人也跟我有一样的困惑;简单来说,GPU主要侧重于计算能力,它由数千个更小、但更高效的Cores组成,通过并行计算的方式,处理多重且复杂的任务。

[[255179]]

CPU我们知道,它的全称是中央处理器,是一台计算机的控制核心和计算核心。它的主要功能在于逻辑控制和任务调度。因此GPU较之于CPU,CPU更像是一个公司的CEO,掌管的整个公司的运营和战略,统筹整个公司的工作。而GPU则是某个部门的得力干将,能力强,迅速并超额完成公司交于的任务。

深度学习是模拟人脑的神经系统组成,通过设定一些规则和数学网络模型而发展起来的一门学科,目的是为了让计算机能够像人脑一样去思考,去认识和理解这个世界。由于计算机本身没有思维能力,因此需要大量的数据去训练它,因此,它对电脑处理器的要求就必须具备高效的并行计算能力,这一点对于以串行为主、核心数基本在2位数的CPU而言是不具备的。因此,GPU凭借其千级核心,高效运算的特点,成为了深度学习、模型训练的最理想选择。

 

我所在公司也在涉及人工智能领域,GPU显卡的数目也有了一定规模,如Tesla的M40、P40、P100等显卡都有所应用,当前这些显卡主要用于算法与Demo的训练。我们通过Docker虚拟化形式实现对GPU资源的分发利用。

首先在搭载有GPU的宿主机上安装CUDA架构环境,进入CUDA Tookit Download官网,现在对应的版本。安装完成后,还需要安装 出DNN,这个是专门对深度学习框架设计的一套GPU加速方案,支持Caffe和TensorFlow等框架。

基础环境安装完毕后,即可以利用nvidia提供的nvidia-docker进行GPU的Docker虚拟化了。官方提供了这些包的安装源列表,安装起来还是比较简单的,安装完毕后,可以通过

docker run –runtime=nvidia –rm nvidia/cuda nvidia-smi

查看docker GPU容器的运行情况。

***可以通过 learningtensorflow.com 官方提供的基于TensorFlow的基准测试脚本,进行GPU与CPU的对比测试,可以发现,GPU在并行运算上,性能要由于CPU很多的。

如上图所示,以上基于Docker虚拟化GPU的方案,从本质上说,GPU资源被打包在一个workspace(即Container)中,workspace运行在宿主机上。这种虚拟化方案虽然能够解决独立训练的问题,但同时也存在一些单点和依赖性问题。首先Workspace的运行依赖于宿主机的运行情况,宿主机从本质上讲是一个孤岛;其次,Docker Container的正常运行,也决定了Workspace的生存情况;第三,由于Container是根据Docker命令生成的,在弹性扩容上,存在一定的限制。

面对以上问题,我们考虑,是否能够采用另外一种虚拟化方案,让GPU也向云端靠拢?云计算的发展,使得应用场景发展至异构计算体系架构,随着机器学习、深度学习的发展,对GPU、FPGA等专业计算芯片也提出了虚拟化的需求。最早可以追溯到2013年,NVIDA发布了GRID K1产品,标志着GPU虚拟化的成熟运用。“A Full GPU Virtualization Solution with Mediated Pass-Through”,及分片虚拟化的vGPU技术,Nvidia对于分片虚拟化社区的推动起了至关重要的角色,并在自己的GRID一系列产品线中,不断地发展和更新着vGPU技术。

虚拟化技术的最终目标,就是努力提供与工作人员在物理机上使用时一样的体验。 NVIDIA GRID®VirtualPC(GRID vPC)和GRID®

虚拟应用程序(GRID vApp)可为每个用户改进虚拟桌面和应用程序,并在NVIDIA®Tesla®GPU上构建经过验证的性能,实现卓越的生产力,安全性和IT可管理性。 虚拟化软件划分了Tesla GPU资源,因此GPU可以在运行任何应用程序的多个虚拟机之间共享。目前GRID各release版本对GPU的虚拟化支持如下:

基本上能够支持市场上主流的Tesla GPU型号。

以下分享一个本田集团利用GRID对GPU的应用案例

通过GRID管理平台,Honda IT部门通过调度物理GPU M60,根据用户需要并提供适当数量的vGPU,并能够通过单个Dashboard管理vGPU,从而确保每个用户都有足够的运算性能完成所处理的任务,如此做到了更高级别的弹性扩容。如同云存储、云计算资源类似,GPU也实现了按需分配。

人工智能是第四次工业革命的***技术,大数据和基于GPU的深度训练是人工智能发展的关键所在,无论之于国家还是企业,都应该通过技术创新,在这一次全世界范围内的浪潮中开启属于自己的一片天地。

https://v.youku.com/v_show/id_XNjY3MTY4NjAw.html

一个很经典的视频,对比了GPU和CPU在图形运算处理上的差别。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/242745.html<

(0)
运维的头像运维
上一篇2025-04-24 22:56
下一篇 2025-04-24 22:57

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注