前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NVIDIA Tesla P4亲测:货真价实的高科技与狠活儿(1)

NVIDIA Tesla P4亲测:货真价实的高科技与狠活儿(1)

作者头像
GPUS Lady
发布2022-10-08 13:12:59
6.4K0
发布2022-10-08 13:12:59
举报
文章被收录于专栏:GPUS开发者GPUS开发者

本文受作者授权,转载自《GPU 篇一:当年王谢堂前燕,飞入寻常百姓家》

(https://post.smzdm.com/p/aoowz2qn/)


2016年9月13日,GTC China大会上,NVIDIA发布了Tesla P4 GPU。这是一块采用Pascal架构、2560个CUDA核心、8GB GDDR5显存、显存带宽192.0GB/S半高Data Center系列GPU。这款GPU为了深度学习推理而生,搭载了当时最先进特性的同时只有50/75W的功耗。当初售价高达一万多的P4 GPU,如今闲鱼售价只要500多,我们重新审视这款GPU,它的某些特性依然能为我们所用,包括时至今日在60W功耗下依然算强劲的性能,支持INT8,能够加速神经网络推理,较大的显存以及对编解码的较好支持。低功耗、小体型、编解码性能良好、可以跑常用模型(训练+应用)以及比GTX 1080更好的特性能否让它在现在深度学习的浪潮中,依然有一席之地?

简介

Tesla P4的GPU算力为6.1,核心代号为GP104,同GTX1080一样。具有4个GPC,20个SM单元,每个GPC有5个SM,每个SM有128个CUDA核心,共计2560个CUDA核心,提供5.5TFLOPS的单精度计算性能,,256KB寄存器,96KB的Shared Memory,总共48KB的L1缓存和8个纹理单元。GPU的整体架构图如下图所示:

Block Diagram of the GP104 GPU

SM的结构图如下图所示:

GP104 SM Diagram

从SM结构图我们可以看出,这代架构Shared Memory和L1 Cache是分开的。与Maxwell相同,GP104的L2 Cache依然是2048KB。

这代架构的Tuning Guide很短,在之前的CUDA阅读100天(DAY82:阅读Compute Capability 6.x )里已经有了详细介绍,如果有需要的同学可以自行翻阅CUDA 100天的内容,我们只在这里粗略介绍一下。

Pascal Tuning Guide一开始就说这代架构跟之前的架构比较相似,不需要改任何代码就可以看到明显的加速,然后说这代架构分两个版本,GP100和GP104,同时给出了P100的白皮书和GTX 1080的白皮书,而Tesla P4就是专业卡版本的GTX 1080,之所以说差不多,是说某些详细参数上有些差异,但是核心参数是一样的,比如GTX 1080采用的是GDDR5X的显存,显存带宽也是320GB/S,核心频率也较高,当然功耗也高。

下面就说了一些SM里的资源情况,指出了GP100和GP104在资源上的不同,这里可以详细参考CUDA 100天的内容。在新的计算指令里提到,Pascal架构支持FP16和INT8,但是FP16速度上,GP100是2xFP32,跟Jetson Nano一样,GP104上是1/64,感觉用还不如不用。

INT8的小节中,NVIDIA这么描述” GP104 provides specialized instructions for two-way and four-way integer dot products. These are well suited for accelerating Deep Learning inference workloads.”意思是GP104上提供了dp4a和dp2a指令,但是没说GP100上也提供,这样看GP100不支持INT8(实际上也不支持,INT8是从算力6.1开始支持的)。在性能上” Both instructions offer a throughput equal to that of FP32 arithmetic.”和FP32具有一样的吞吐率,但是这句之前有一句:” The __dp4a intrinsic computes a dot product of four 8-bit integers with accumulation into a 32-bit integer.”这样就可以理解为是说前者一条的代价,和一条普通的FP32指令一样,但是前者是4组int8打包的,所以是400%的吞吐率,也即理论上提供22T的INT8性能。在下面TRT实验中,我们也可以看到提升了一倍的加速效果。

新的特性还有Atomic Memory Operations也即介绍原子操作的一些东西,共享内存以及共享内存带宽,以及新的统一内存,这些都在CUDA 100天上有详细介绍,这里不再累述。

以上都是关于这张卡计算部分的总结,下面我们来看看这张卡另一个重要特性,也即视频编解码,Tesla P4对当今(2022年)主流的编解码支持依然非常友好。我们根据NVIDIA Vedio Encode and Decode GPU Support Matrix表来看下T4 GPU的视频编解码能力。

P4 GPU视频编码支持如下:

Encode GPU Support Matrix

图中大红圈里的为P4 GPU的编码支持,可以看出,P4 GPU属于数据中心系列,支持h.264标准 YUV420采样,444采样和Lossless、支持h.265标准 YUV420采样,444采样和Lossless,支持最大编码分辨率为8K,同时h.265支持10bit编码,但是不支持B Frame,不支持AV1编码。拥有两个编码硬核,注意小红圈里的Unrestricted,无限制,我们再看下GTX 1080的编码支持中这部分的描述:

GTX 1080’s Encoder

我同样用小红圈将其画出,GTX 1080只支持3路视频编码。注意这里的3,是只整机支持的数目,也就是说,你将机器中插入8张GTX 1080,依然只能支持3路视频编码,而P4是无限制的。2颗编码硬核的编码速度大约为1000fps,如果用来编码本地视频,3路和无限制其实区别并不大,3x333fps跟33x30fps对本地视频来说没有本质区别,都能最大化利用编码硬核性能。但是对实时视频就不一样了,对于直接读取摄像头视频,然后推理,编码保存这个过程来说,摄像头帧率一般为15~30帧,3路最多也只有90fps的编码性能,只利用了1/10不到,后面实验部分我们可以看到,视频编码有个基本功率,这个功率非常大,编码硬核利用率越低,这个代价就越大。而P4对编码路数没有限制,实验中我们可以看到随着编码路数的增加,显卡功耗并没有太大变化。

P4视频解码支持如下:

Decode GPU Support Matrix

可以看出解码应对当今主流视频标准依然没什么压力,支持h.264,h.265 8bit 10bit,支持VP8和VP9 8bit,不支持h.265 444采样,不支持AV1解码。不过考虑到目前h.265 444采样依然没有推广开来,片源很少,AV1编码的视频同样片源很少,不管是下载的电影资源也好,还是摄像头的实时视频也好,基本都是420采样的h.264或者420采样的h.265,所以可以看出,视频解码部分依然支持良好。

由于解码部分性能消耗相对很小,这部分放不放到GPU里做其实区别不大,因此这部分我们不做深究,也不做实验测试。

下面继续介绍一些它的其他特性:

半高:半高显卡属于小众市场,但是确实有很多场景又需要半高显卡,各个显卡厂家也都退出了性能不错的半高显卡,比如半高GTX 1650,半高750等,甚至还有半高的3060专业版——A2000。半高显卡受众较小,价格一般相对比较昂贵,比如半高的GTX 1650这张卡只有FP16性能比P4好一点,其他方面性能均不如P4,闲鱼价格要700多,而各方面都很差的GTX750半高卡,也要200块左右,相对来说P4从价格上还是很划算的。

单槽:P4是一张单槽卡,A2000是双槽卡,由于我的nas机箱只支持半高单槽,所以没法用A2000。

被动散热:这张卡定位是Data Center系列,没有主动散热器,这是这张卡使用最麻烦的地方,我先手动锁定功耗到60W,然后用了一个8cm的风扇侧吹,跑训练测试的时候温度88度,功耗不稳定,但约45W左右,用yolov5s模型+coco128数据集,能基本不降频跑完300个epochs测试。虽然闲鱼上有人卖散热模块,其他地方也有魔改散热教程,但是折腾都需要付出一定的时间精力,这点需要考虑好。

没有外接供电口:无需外接供电,这点必须好评。

没有显示输出口:这个可能在一般的电脑上没有什么问题,有核显就用核显输出,没有核显可以再加块亮机卡就解决了,但是我这块主板为X99E/ITX,只有一个pciex16的插槽,X99支持的CPU天然没有核显,因此局面一度非常尴尬,我只能先接一张亮机卡,然后调整bios里的各种选项,确保系统无问题了,再将亮机卡换成P4,然后开机,不过还好很顺利,直接就进系统了。如果亮机卡无问题,换P4启动不了,甚至没法排查。不过没有显示输出接口,理论上又能省点电。

ECC内存支持:P4支持ECC校验,开启后会损失一部分显存,好评。

GPU Memory on enable ECC

开启过后,显存可用为7611MB,下图显示关闭ECC时显存:

GPU memory with ECC disabled

可用为8121MB,差了500MB。值得注意的是开启ECC关闭ECC这个操作是有寿命的,开关几千次就不能再继续开关了。

虚拟化支持:P4支持虚拟化,可以切分,但是我没用过虚拟化,贴一张官网的P4 FOR VIRTUALIZATION

P4 FOR VIRTUALIZATION

至此,P4的特性基本介绍完毕,下一篇将进行实验部分,敬请关注

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-10-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 GPUS开发者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档