如果要做深度学习的训练,最主要关心的就是计算性能。P100,atv,P40 有很大的性能优势,因为 K80 由两个 GPU 的芯片组成,它的单精度计算性能是两个芯片相交的一个结果,但是在做 GPU 计算过程中,两个芯片相当于使用两个 GPU,就势必会涉及到数据交换。 Memory(内存) 因为 Memory 如果很大的话,Bas 也相对要大一些,这样可以充分的去使用 GPU 的计算性能,减少 GPU 跟 CPU 之间的 I/O,可以优化 AI 的应用程序,所以 Memory 对也是非常重要的。 Memory 的带宽 计算性能可以非常快,但是如果 GPU 内部的 Memory 带宽不够的话会成为运行的一个瓶颈点。 CPU 与 GPU 的连接方式 PCIe,或者是 NVLink,现在 CPU 跟 GPU,如果 X86 的 GPU,大部分最主要还是基于 PCIe 来去连接 GPU 的,但是 GPU 跟 GPU 之间,可以通过 NVLink 进行快速的数据交换。 功耗 因为如果搭建了一个很大的计算平台,功耗对于机房环境的设置也是非常重要的点。现在做深度学习很多人希望在一个迭代内部,GPU 的数量越多越好。GPU 是一个局部发展量非常大的平台,所以说它的功耗对整个机房的功耗要求也是非常高的。要去综合考虑这几方面的因素来选择 GPU 平台。 视频最后的 Q&A 环节我们也做了文字版,方便有需要同学们查看~ 1.GPU、CPU、TPU 三者之间的区别 CPU 主要做一些通用计算的应用。而 GPU 最早做计算的过程中,就是通用计算的 GPU 平台,我们想把 GPU 也像 CPU 一样做通用计算的平台,但是 GPU 它受限于架构和它的并行的方式,并不是所有的 CPU 的应用都适合于 GPU 做。在实际的应用过程中是 CPU 跟 GPU 搭配去做的,我们把适合 CPU 端的放在 CPU 端去做,而适合 GPU 做的复杂指令计算给 GPU 去做。 关于 TPU,是谷歌专门针对于他们的计算模式,或者是 AI 的模式设计的架构,然后专门去做这样的应用,相当于是一个专用的芯片。 现在也有很多的加速计算卡,之所以说 GPU 它的应用非常广,或者是说这么受大家欢迎,不仅仅因为 GPU 它有很大的计算性能,同时跟 GPU 构建的整个生态是有很强的关系,从 2006 年开始,我们就开始构建基于 GPU 的 CUDA 平台,包括现在基于深度学习,我们不仅仅提供了硬件,还提供了一整套的 SDK 库,供大家使用,这样可以让客户更加方便的去使用到 GPU 开发去做加速。 2. 是不是目前的显卡都能做深度学习呢? A:现在的 GPU 它分为多种用途,比如说渲染、嵌入式等等。英伟达的 GPU 都是带有 CUDA 核心的,所以这些都可以去做,可以去跑 CUDA 的应用计算。但是在做深度学习的过程中,我们不仅仅要关注于这种 CUDA 核,同时也要去关注其他的功能:比如说 GPU 的 Memory,或者 GPU 卡之间的数据交换。所以现在所有的卡都可以跑 CUDA,而且所有的卡都可以去运行深度学习的训练,这个是没有问题的,如果运行的好的话,肯定是要选择更专业做深度学习训练的显卡,或者是专业做计算的显卡使用。 3. 有人问到过这样的问题:当这最新型号的 GPU 投放到市场之后,上一代,甚至更早一代会不会被过早的淘汰掉,现在再用之前的型号,会不会影响到自己进行深度学习训练? A:因为现在市场上,不同架构的 GPU 卡同时存在,同时它的使用场景不同。用户既然原来购买了 GPU 显卡,也可以继续去用,因为我们去构建这种深度学习平台,可以通过调度的方式,把不同架构的 GPU 卡去充分的利用起来,并不是说新的 GPU 卡到了以后,原来的卡就不会去用了。构建不同的平台,或者不同的应用场景使用,可以充分发挥到 GPU 卡的优势。 4.GPU 在 Docker 下的使用状况? A:很多的这种公司也基于 Docker 来去构建他们的平台,GPU 也是支持 Docker 的,而且在 GitHub 英伟达的站点上可以看到,我们有一个 NVIDIA Docker,这个是基于原来的 Docker 上,后来我们基于 GPU 做了很多的优化,这样让 GPU 对 Docker 会支持的更好,而且现在我所支持的客户里面有很大一部分人都是采用 NVIDIA Docker 来管理与使用 GPU 的。 5.Tesla P4 上有一个 Incoding 加速器,同时可以处理多少视频流? (责任编辑:本港台直播) |