服务电话:

400-801-5670

选择GPU服务器的基本原则

发表时间:2019年12月19日 作者: 浏览次数:1674

     不同类型AI服务器之比较分析,通过下面这张二维图中我们可以对不同架构的服务器进行简单的比较。

     首先看下不同类型AI服务器的比较,从左上方到右下角依次是CPU、GPU、FPGA、TPU、ASIC,从横轴来看,越往右性能(Performance)越好。

     纵轴Programmability/Flexibility是指服务器的可编程性和灵活性, ASIC的性能最好,因为它是将算法固化在芯片上,算法是比较固定的,所以它的性能最好的,但是它的编程性和灵活性就相对比较弱。而CPU的灵活性和编程性最好,但性能最弱。总的来说,GPU的灵活性比CPU弱,但它的性能更好。往下依次是FPGA、TPU以及ASIC。

     在实际选择时需要考虑到功耗、成本、性能、实时性等各方面因素,尤其是一些具有专用目的的处理器,如果算法已经固化并且很简单,可以考虑ASIC,因为ASIC性能好且功耗低。如果是在训练或者通用情况下,GPU则是更好的选择。

选择GPU服务器的基本原则

     在介绍选择GPU服务器的基本原则之前,先来跟大家介绍下常见的GPU和GPU服务器。

     常见的GPU,按总线接口类型,可以分为NV-Link接口、传统总线接口以及传统PCI-e总线三种。

     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到其他部分都是固定且优化过的,这时效率就比较高。