一、什么是CPU?什么是GPU?
在搞清楚GPU 服务器和CPU服务器的区别之前,我们先回忆下,什么是CPU?什么是GPU?
1、所谓CPU即中央处理器(CPU,central processing unit,缩写:CPU),是作为整个计算机系统的运算和控制的核心,是信息处理、程序运行的最终执行单元。CPU是最核心的部件,也是整个数据处理的最根本的部件。
2、所谓GPU即图形处理器(GPU,Graphics Processing Unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。
但是,仅仅从上面的字面含义,是不能正确了解GPU和CPU在数据计算中的扮演的重要角色。
GPU 与 与 CPU区别:
从 GPU 与 CPU 架构对比图可以看出,CPU 的逻辑运算单元较少,控制器占比较大;GPU 的逻辑运算单元小而多,控制器功能简单,缓存也较少。GPU 的众多逻辑运算单元呈矩阵排列,可以并行处理数量众多但较为简单的处理任务,图像运算处理就可以进行这样的拆解。GPU 单个运算单元处理能力弱于 CPU,但是数量众多的运算单元可以同时工作,当面对高强度并行计算时,其性能要优于 CPU。
简而言之
CPU擅长道统领全局等复杂操作而GPU擅长对大数据进行简单重复操作。CPU是从事复杂脑力劳动版的教援,而GPU是进行大量并行计算的体力劳动者。
深度学习是模拟人脑神经系统而建立的数学网络模型,这个模型的最大特点是,需要大数据来训练。因此,对电脑处理器的权要求,就是需要大量的并行的重复计算,GPU正好有这个专长。这也是GPU服务器如今如火如荼的重要原因。
二、CPU服务器和GPU服务器之间的区别
CPU服务器和GPU服务器的说法,其实也不科学。没有GPU的服务器,照样可以进行计算和使用,但没有CPU的服务器是无法工作的。简单的说,CPU服务器和GPU服务器的说法只是偏重于该服务器的侧重点不同而已。
三、GPU服务器
GPU服务器是基于GPU的应用于视频编解码、深度学习、科学计算等多种场景的快速、稳定、弹性的计算服务,我们提供和标准云服务器一致的管理方式。出色的图形处理能力和高性能计算能力提供极致计算性能,有效解放计算压力,提升产品的计算处理效率与竞争力。
四、如何选择GPU服务器,GPU服务器的选择原则:
首先,我们需要了解下,GPU主要分三种接口,目前市面上可以进行交付的主要是传统总线接口、PCIe接口和NV-Link接口的。
NV-Link接口类型的GPU典型代表是NVIDIA V100,采用 SXM2接口。在DGX-2上有SXM3的接口。NV-Link总线标准的GPU服务器可以分为两类,一类是NVIDIA公司设计的DGX超级计算机,另一类是合作伙伴设计的NV-Link接口的服务器。DGX超级计算机不仅仅提供硬件,还有相关的软件和服务。
传统总线接口的GPU,目前主流的有这几款产品,比如 PCI-e接口的V100、 P40(P开头指的是上一代PASCAL架构)和P4,以及最新的图灵架构T4等。其中比较薄和只占一个槽位的P4和T4,通常用于Inference,目前也已经有成熟的模型进行推理和识别。
传统PCI-e总线的GPU服务器也分为两类,一类是OEM服务器,比如曙光、浪潮、华为等其他国际品牌;另一类是非OEM的服务器,也包括很多种类。选择服务器时除了分类,还要考虑性能指标,比如精度、显存类型、显存容量以及功耗等,同时也会有一些服务器是需要水冷、降噪或者对温度、移动性等等方面有特殊的要求,就需要特殊的服务器。
选择GPU服务器时首先要考虑业务需求来选择适合的GPU型号。在HPC高性能计算中还需要根据精度来选择,比如有的高性能计算需要双精度,这时如果使用P40或者P4就不合适,只能使用V100或者P100;同时也会对显存容量有要求,比如石油或石化勘探类的计算应用对显存要求比较高;还有些对总线标准有要求,因此选择GPU型号要先看业务需求。
GPU服务器人工智能领域的应用也比较多。在教学场景中,对GPU虚拟化的要求比较高。根据课堂人数,一个老师可能需要将GPU服务器虚拟出30甚至60个虚拟GPU,因此批量Training对GPU要求比较高,通常用V100做GPU的训练。模型训练完之后需要进行推理,因此推理一般会使用P4或者T4,少部分情况也会用V100。
当GPU型号选定后,再考虑用什么样GPU的服务器。这时我们需要考虑以下几种情况:
第一、 在边缘服务器上需要根据量来选择T4或者P4等相应的服务器,同时也要考虑服务器的使用场景,比如火车站卡口、机场卡口或者公安卡口等;在中心端做Inference时可能需要V100的服务器,需要考虑吞吐量以及使用场景、数量等。
第二、 需要考虑客户本身使用人群和IT运维能力,对于BAT这类大公司来说,他们自己的运营能力比较强,这时会选择通用的PCI-e服务器;而对于一些IT运维能力不那么强的客户,他们更关注数字以及数据标注等,我们称这类人为数据科学家,选择GPU服务器的标准也会有所不同。
第三、 需要考虑配套软件和服务的价值。
第四、 要考虑整体GPU集群系统的成熟程度以及工程效率,比如像DGX这种GPU一体化的超级计算机,它有非常成熟的从底端的操作系统驱动Docker到其他部分都是固定且优化过的,这时效率就比较高。