GPU介绍及选型

一、GPU介绍及选型

1、什么是GPU

 GPU (Graphic Processing Unit)翻译为图形处理器。图形处理器是一种专门在个人电脑、工作站、游戏机和一些移动设备上运行绘图运算工作的微处理器。 图形处理器是英伟达公司在1999年8月发表NVIDIA GeForce 256绘图处理芯片时首先提出的概念,在此之前,电脑中处理影像输出的显示芯片,通常很少被视为是一个独立的运算单元。

2、GPU产生的背景

冯诺依曼计算机架构的瓶颈

  • 曾经,几乎所有的处理器都是以冯诺依曼计算机架构为基础的。
  • 该系统架构简单来说就是处理器从存储器中不断取指,解码,执行
  • 瓶颈:内存的读写速度跟不上 CPU 时钟频率。具有此特征的系统被称为内存受限型系统,目前的绝大多数计算机系统都属于此类型。
  • 为了解决此问题,传统解决方案是使用缓存技术。通过给 CPU 设立多级缓存,能大大地降低存储系统的压力
  • 然而随着缓存容量的增大,使用更大缓存所带来的收益增速会迅速下降,这也就意味着我们要寻找新的办法了。

3、CPU 和 GPU 的区别

CPU 单个核心运算能力强,并且内核数量较少(几个到几十个不等),能高效地完成串行任务;而 GPU 则包含非常多核心(数千个),虽然每个核心性能较弱,但凭借核心数多、可并发处理多个任务的优势,在特定场景可提供非常高效的算力。

  • CPU 适用于一系列广泛的工作负载,特别是那些对于延迟和单位内核性能要求较高的工作负载。它尤其适合用于处理从串行计算到数据库运行等类型的工作。
  • GPU 最初是作为专门用于加速特定 3D 渲染任务的 ASIC 开发而成的。随着时间的推移,这些功能固定的引擎变得更加可编程化、更加灵活。尽管图形处理和当下视觉效果越来越真实的顶级游戏仍是 GPU 的主要功能,但同时,它也已经演化为用途更普遍的并行处理器,能够处理越来越多的应用程序。

4、GPU的关键参数

  • 芯片类型:Maxwell, Pascal, Volta,Turing,渐次升级
  • CUDA 核心(cores):CUDA 核心的数量决定了 GPU 并行处理能力,在深度学习、机器学习等并行计算类业务下,CUDA 核心多意味着性能好一些。
  • Tensor核心数(TMUS):张量核心;“张量”是稍微高级一点的数学概念,是线性代数的延伸,也可以看作对线性代数知识的集大成,简单理解可以是n维数组。
  • ROPS:即光栅化处理单元,表示显示GPU拥有的ROP光栅操作处理单元的数量。通常来说:3D图形处理可以分成四个主要步骤,几何处理、设置、纹理和光栅处理,而ROPs就是处理光栅单元。
  • 显存容量:其主要功能就是暂时储存 GPU 要处理的数据和处理完毕的数据。显存容量大小决定了 GPU 能够加载的数据量大小。在显存已经可以满足客户业务的情况下,提升显存不会对业务性能带来大的提升。在深度学习、机器学习的训练场景,显存的大小决定了一次能够加载训练数据的量,在大规模训练时,显存会显得比较重要。
  • 显存位宽:显存在一个时钟周期内所能传送数据的位数,位数越大则瞬间所能传输的数据量越大,这是显存的重要参数之一。
  • 显存带宽:指显示芯片与显存之间的数据传输速率,它以字节/秒为单位。显存带宽是决定显卡性能和速度最重要的因素之一。 

5、英伟达显卡的分类

  • GeForce

        典型型号:1080、2080、2080Ti;定位:消费级游戏卡;价位:~1万
        典型型号:Titan X、Titan V、Titan RTX;定位:消费级专业卡;价位:2~3万

        *注:英伟达禁止在数据中心场景使用GeForce系列显卡

  • Quadro

        典型的型号:P4000、RTX 6000、RTX 8000;价位:3~4万
        定位:工作站,专业图形处理,视频渲染

  • Tesla

        典型型号:T4:价位:~2万
        典型型号:P40、P100、V100;价位:5~7万
        典型型号(nvlink接口):V100 SMX2;价位:??(据说很贵)
        定位:数据中心级专业卡

 

6、英伟达常见显卡对比

7、GPU领域的相关概念

  • CUDA全名计算统一设备架构(Compute Unified Device Architecture, CUDA)

        东家是英伟达(NVIDIA)。CUDA是专门为通用计算而设计的(Tesla卡甚至连图形输出都没有,专为计算而设计),CUDA采用一种简单的数据并行模型,再结合编程模型,从而无需操纵复杂的图形基元,CUDA使得GPU看起来和别的可编程设备一样。
         CUDA对英伟达的意义:显著降低了通用计算编程难度-> 构建了生态护城河

  • cuDNN(CUDA Deep Neural Network library)

        是NVIDIA打造的针对深度神经网络的加速库,是一个用于深层神经网络的GPU加速库。如果你要用GPU训练模型,cuDNN不是必须的,但是一般会采用这个加速库。
        cuDNN的意义:降低了深度学习的编程难度

 8、AI芯片技术路线之争

  • FPGA(Field Programmable Gate Array)现场可编程逻辑门阵列

        FPGA作为一种高性能、低功耗的可编程芯片,可以根据客户定制来做针对性的算法设计。所以在处理海量数据的时候,FPGA 相比于CPU 和GPU,优势在于:FPGA计算效率更高,FPGA更接近IO。
        FPGA不采用指令和软件,是软硬件合一的器件。对FPGA进行编程要使用硬件描述语言,硬件描述语言描述的逻辑可以直接被编译为晶体管电路的组合。所以FPGA实际上直接用晶体管电路实现用户的算法,没有通过指令系统的翻译。

        可以对硬件编程,实现软件的编程效果;

        灵活,但是功耗大,成本高;

  • ASIC(Application Specific Integrated Circuit)特殊应用集成电路

        ASIC是一种专用芯片,与传统的通用芯片有一定的差异。是为了某种特定的需求而专门定制的芯片。ASIC芯片的计算能力和计算效率都可以根据算法需要进行定制,所以ASIC与通用芯片相比,具有以下几个方面的优越性:体积小、功耗低、计算性能高、计算效率高、芯片出货量越大成本越低。但是缺点也很明显:算法是固定的,一旦算法变化就可能无法使用。目前人工智能属于大爆发时期,大量的算法不断涌出,远没有到算法平稳期,ASIC专用芯片如何做到适应各种算法是个最大的问题,如果以目前CPU和GPU架构来适应各种算法,那ASIC专用芯片就变成了同CPU、GPU一样的通用芯片,在性能和功耗上就没有优势了。

        软硬件固化,针对某种特定应用;

        功耗低,量产后成本低,但是不灵活;

二、vGPU介绍及选型

1、什么是vGPU

vGPU(虚拟GPU)是一种技术,允许将物理GPU的计算资源虚拟化,以便多个虚拟机可以共享这些资源‌。

2、vGPU产生的背景

由于加密货币、 AI 等产业的蓬勃发展,加上 GPU 芯片产能不足,以及后来美国针对中国的 GPU 禁运等一系列事件的影响,GPU 卡在市场上非常稀缺,导致其售价非常昂贵,而且供货周期也不稳定。对于有 GPU 需求的企业用户,不但需要思考 GPU 卡的选型,同时需要考虑怎样尽可能高效利用 GPU 资源。通常情况下,将 GPU 资源虚拟化能有效提高资源利用率,目前大多企业也已经习惯将业务部署在虚拟机之上,GPU 与虚拟机的结合可以说是顺理成章的。在服务器虚拟化(或超融合)环境下使用 GPU ,大体分为两种模式:GPU 直通和 vGPU 。

3、GPU直通

GPU 直通主要是利用 PCIe Pass-through 的技术,将物理主机上的整块 GPU 显卡直通挂载到虚拟机上使用,与网卡直通的原理类似,需要主机支持 IOMMU。这种方案有利有弊:

优势

  • 通用性好,大部分的 GPU 卡型号都支持直通功能。
  • 兼容性好,直通 GPU 在虚拟机中识别的显卡型号与物理显卡一致,直接安装官方驱动,可无损使用 GPU 的各项特性和功能。
  • 性能损失小,直通 GPU 性能接近物理机,性能损失一般低于 5%。

限制

  • 一张 GPU 卡不能同时直通给多个虚拟机使用,相当于虚拟机独占了 GPU 卡。如果多个虚拟机需要同时使用 GPU,需要在服务器中安装多块 GPU 卡,分别直通给不同的虚拟机使用。
  • 拥有直通 GPU 的虚拟机不支持在线迁移。

4、vGPU

为了应对 GPU 直通带来的限制,vGPU 技术应运而生:将 GPU 卡上的资源进行切分,切分后的 GPU 资源可分配给多台虚拟机使用。vGPU 技术相对 GPU 直通技术要更为复杂,GPU 拥有多种切分方式和不同切分粒度,使得 vGPU 方案有很多种组合。

把一个GPU切分成多个vGPU,给到多个虚拟机使用。

  • 服务器硬件需安装NVIDIA支持虚拟化的物理显卡
  • 在虚拟化层(超融合架构)内置NVIDIA提供的vGPU管理组件,负责将物理显卡的GPU核心切分成多个虚拟GPU硬件
  • 虚拟机安装对应的显卡驱动Driver保证虚拟显卡工作正常

vGPU方案特点:

  • 资源占用可视,管理简单
  • GPU资源池化,硬件复用更灵活,提高显卡资源利用率

5、vGPU 切分方式

  • Time-sliced 切分方式:是按时间切分 GPU,每个 vGPU 对应物理 GPU 一段时间内的使用权。此方式下,vGPU 上运行的进程被调度为串行运行,当有进程在某个 vGPU 上运行时,此 vGPU 会独占 GPU 引擎,其他 vGPU 都会等待。所有支持 vGPU 技术 GPU 卡都能支持 Time-sliced 的切分方式。
  • Multi-Instance GPU (MIG)切分方式:将物理 GPU 划分为多个分区(vGPU),vGPU 是一个单独的实例,可以独占访问实例的引擎。多个 vGPU 上运行的进程并行运行。MIG 是基于 NVIDIA Ampere GPU 架构引入的,仅有 Ampere 架构的 GPU 型号才能使用 MIG 方式。MIG 可将 GPU 划分为多达七个实例,每个实例均完全独立于各自的高带宽显存、缓存和计算核心。

6、vGPU系列

NVIDIA 对同一款显卡可支持多种切分的方案,基于不同的切分方案可适应不同用户工作负载类。因此 NVIDIA 将其显卡分为 4 个 vGPU 系列:

系列工作负载目的
Q-series强调图形处理能力,针对需要 Quadro 技术性能和功能的创意和技术专业人士的虚拟工作站
C-series计算密集型服务器的工作负载,针对人工智能、深度学习或高性能计算场景
B-series面向商务专业人士和知识工作者的虚拟桌面(如:XenDesktop)
A-series面向虚拟应用(如:XenApp)用户的应用流式传输或基于会话的解决方案

以 NVIDIA A40 这款显卡为例,它可以支持全部 4 种系列的 vGPU 切分方案,而各 vGPU 系列又可以按照切分 GPU 数量分为不同的型号。

vGPU 型号系列目标用户场景搭配 vGPU 软件许可
A40-48Q/……等 10 种型号Q 系列虚拟工作站vWS
A40-48C/……等 7 种型号C 系列AI 训练vCS 或者 vWS
A40-2B/……等 2 种型号B 系列虚拟桌面vPC 或者 vWS
A40-48A/……等 10 种型号A 系列虚拟应用vWS

 7、vGPU 软件许可

上述提到 vGPU 切分功能是由 GPU 硬件支持的,但虚拟机要真正使用 vGPU 功能还需要搭配相关 NVIDIA GRID vGPU 软件许可才能使用。大致机制是:当带有 vGPU 设备的虚拟机启动后,需从 NVIDIA vGPU License 服务器获取 license,才能正常激活 vGPU 的相应功能,否则无法正常使用;当虚拟机关闭时,license 将被 License 服务器重新回收。 

NVIDIA GPU 提供以下的 NVIDIA GRID 授权产品:

  • vWS:虚拟工作站(Virtual Workstation)
  • vCS:虚拟计算服务器(Virtual Compute Server)
  • vPC:虚拟 PC(Virtual PC)
  • vApp:虚拟应用程序(Virtual Application)

同时需要注意一点:vGPU 系列与 vGPU 授权许可需要正确搭配才能正常工作。以下是 vGPU 系列与 vGPU 授权许可的搭配关系。 

GRID License 类型支持的 vGPU 类型系列
vAppsVirtual ApplicationA 系列
vCSVirtula Compute ServerC 系列
vPCVirtual PCB 系列
vWSVirtual WorkstationQ 系列、C 系列、B 系列

 4、vGPU版本选型路径

三、英伟达GPU选型

1、英伟达GPU选型经验分享 

  • M10、M60 主要用于桌面云、图形设计场景,可以支持多个vGPU
  • RTX 6000、RTX 8000 定位用于专业的图形设计,也支持深度学习,支持vCS授权模式
  • 专业的用于深度学习的显卡有P4、P40、 T4 、P100、V100
  • P4、P40、T4 擅长推理、P100、V100 擅长训练;总体来说,训练需要比推理更强的性能
  • T4 突出优势是低功耗,仅75W,一般深度学习显卡功耗在200-300W之间
  • 上述几款显卡中,性能最好的是V100;
  • GeForce系列 为定位用于个人游戏场景,核心技术与Tesla 系列没有本质的差异,主要的差别是GeForce不支持vGPU方案,只能直通,GeForce 显卡内存不支持ECC,可靠性比Tesla略差
  • 因为定价策略的原因,GeForce 比Tesla 会有明显的性价比,很多用户会选择使用GeForce卡做深度学习
  • 上述的显卡中 RTX 2080 Ti 是性价比最高的显卡;
  • Titan V 是V100的阉割版,与其他GeForce系列显卡略有区别,改卡定位是一款适合“能玩游戏的深度学习计算卡”,在一定程度上,可以认为Titan V是一款价格更便宜的Tesla计算卡;
  • 按照NVIDIA的规定,在数据中心做人工智能、深度学习,不允许用游戏卡 

2、英伟达GPU性价比

在上面这张图中,数字越大代表每一美元能买到的性能越强。可以看出, RTX 2060比RTX 2070,RTX 2080或RTX 2080 Ti更具成本效益,甚至是Tesla V100性价比的5倍以上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值