NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

简介:

ZD至顶网服务器频道 04月06日 新闻消息: GTC16大会消息:期待已久,NVIDIA的Pascal架构GPU终于出笼。它就是GP100,GP100将现身于Tesla P100里,目标应用是高性能计算(如超级计算机模拟天气和核燃料之类的)和深度学习人工智能系统。

NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

P100是今天在加州圣何塞的NVIDIA的GPU技术大会(GTC)上宣布推出的。P100内含150亿个晶体管(如算上16GB内存的话则为 1500亿个),基于16nm FinFET。用户如想染手该硬件,可以买一个129000美元的DGX-1盒,DGX-1消耗的功率为3200瓦,六月份交货,计算能力为170TFLOPS;或是等大云提供商今年后半年提供相应的在线服务;或是2017年初从诸如IBM、Cray、惠普企业、戴尔等商家买一个配有Pascal的服务器。这些云巨头正在大肆购入该数字处理芯片。

P100不是针对游戏玩家和台式机推出的;而是用来吸引科学家和软件工程师加入Nvidia的CUDA派对及在GPU上运行人工智能(AI)培训系统、颗粒分析代码等等的。Nvidia公司联合创始人兼首席执行官黄仁勋告诉与会人士,”深度学习将出现在各种应用程序里。”

不过,除非Nvidia会变戏法,这些Pascal设计终将以自己的方式进入普通老百姓的电脑里。Pascal架构里有一些奇妙的设计。笔者在下面总结一下。

相当大度

自CUDA 6以来,Nvidia为程序员提供了所谓的统一内存(Unified Memory),顾名思义,统一内存提供了主机里GPU和CPU一个共享虚拟地址空间。此方法为开发者提供了GPU和CPU内核之间的统一访问。统一内存空间的最大值和GPU内存相同。

而在新推出的Pascal里, 其GP100可以在统一内存里触发页面错误(Page fault),允许数据按需要载入。换句话说,它不是等着花时间将大量数据移入GPU内存里,而是在图形处理器里运行的代码假定数据已经在GPU内存里并在需要是访问这些数据。如果数据记忆不存在,即会触发页面错误,所需的数据随后会从其他地方移过来。

NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

例如,如果用户分配了2GB阵列的共享内存,假定在CPU内核运行的现代操作系统开始修改其内容,则该CPU在访问原始配置时触发页面错误,并将虚拟记忆空间映射到物理记忆空间。然后,GPU开始在阵列里进行写入操作。其记忆页面对CPU来说是实打实存在的,但对于GPU来说却不是,因此,GPU将阵列里的内容逐页迁移到物理内存里,而在CPU里这些记忆页面则被标记为不存在。

CPU随后修改阵列时,会触发页面错误,并从GPU里取出数据。所有这些对于软件开发者来说是“透明的”,统一内存提供了数据的一致性。这样做还可以令统一内存空间大于GPU物理内存,原因是数据在有需要时被加载。因此,统一内存的地址长度为49位。

NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

要记住的是,该异构模型主要是针对科学和人工智能工作负载,用于处理大型和复杂的数据群:游戏及低延迟应用程序并不总是需要按需载入大量数据的页面错误触发操作。这种页面错误触发操作是颇为昂贵的操作,尤其是如果数据要在PCIe上迁移。但这另一方面意味着研究人员可以从平面内存模型里获得更多的简化和效率。程序员可以在他们的代码上向系统表明需要的来自GPU的预取内存大小,进而可以在启动新的内核时避免出现页面错误风暴。其GPU还可以并行地提供群页面错误服务,无需费时的一个接一个发出。每个页面的大小可达2MB。

Nvidia还表示正在与Linux发行版厂商合作,将统一内存支持植入Linux系统:将来的软件只需调用一个通用malloc函数,然后将指针交给GPU,而底层操作系统会处理分配和页面操作,无需使用一个特殊的CUDA分配调用。

NVIDIA发布Pascal版Tesla P100:有什么厉害之处? 

利用页面错误触发操作实现数据的连贯性。

层面

GP100里的每个GPU含3584个32位(单精度)CUDA内核和1792个64位(双精度)CUDA内核。这些32位内核也可以运行16位(半精)计算。

内置4MB的L2高速缓存,另有14MB的共享寄存器,可以以80TB/s的速率传输数据。基准时钟速度为1.3GHz,提升为1.4GHz,5.304TFLOPS双精度数学(使用半精则可达21TFLOPS)。TDP为300W。内核排列成56个SM(流处理器),单个SM的样子如下:

 NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

NVLink挡一面

GP100用的是新型NVLink互连,图形处理器集群的连接不是用PCIe,而是用NVLink,速度为40Gb/s。这意味着数据将高速在图形处理器之间迁移。8个P100(DGX-1的配置)利用NVLink交换数据,其速度直逼1TB/s。

 NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

未来的计算内核(目前还只是IBM的OpenPower)可以直接与NVLink连线,因而就无需在慢悠悠的数据总线上传输数据。Tesla P100支持高达4Gb/s的双向链接,可用于读取和写入内存。性能的提升颇大。

 NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

本不该提,是……

在P100里运行的软件可以在指令边界请求优先处理,无需等到绘图调用结束。这意味着其他线程可以立即让位给一个优先级高的线程,而无需等到冗长的绘制操作结束。这种额外的延迟(等待调用结束)对于时间敏感的应用是很麻烦的事,如虚拟现实耳机应用。5毫秒的延迟可能导致Vsync的遗漏,继而在实时渲染出现画面失常,会让一些人抓狂。

而如果在指令层次处理,这种由延迟导致的恶果就会消失,对虚拟现实游戏玩玩家来说是个好消息。指令层次上的优先请求意味着程序员也可以通过GPU进行单步代码找错。

为内存致谢

P100采用HBM2(高带宽内存的英文缩写),以720GB/s的速率交换数据,纠错机制免费奉送,之前的Nvidia芯片为实现纠错牺牲一些存储空间。

 NVIDIA发布Pascal版Tesla P100:有什么厉害之处?

据说HBM2提供的容量大于置于芯片外的DDR5 RAM,使用的功率也更少。每个HBM2堆栈的存储最多可达8GB。P100含4个HBM2堆栈,内存共为 16GB。整套(CPU加内存)的尺寸为55毫米x 55毫米。芯片模版本身的面积为600平方毫米。

该GP100还增添了新的原子指令:全局内存里的双精度浮点原子加法运算。

有媒体人士发文称,“黄仁勋表示,数以千计的工程师一直在为Pascal GPU架构不懈的工作着。Nvidia三年前“全面进入”机器学习,同时启动了Pascal GPU架构工程,其间投入了30亿美元。Nvidia想拿回这些钱,当然也想赚一些钱。”


原文发布时间为:2016-04-06

本文来自云栖社区合作伙伴至顶网,了解相关信息可以关注至顶网。



相关实践学习
基于阿里云DeepGPU实例,用AI画唯美国风少女
本实验基于阿里云DeepGPU实例,使用aiacctorch加速stable-diffusion-webui,用AI画唯美国风少女,可提升性能至高至原性能的2.6倍。
相关文章
|
缓存 运维 Kubernetes
NVIDIA GPU Operator分析一:NVIDIA驱动安装
背景我们知道,如果在Kubernetes中支持GPU设备调度,需要做如下的工作:节点上安装nvidia驱动节点上安装nvidia-docker集群部署gpu device plugin,用于为调度到该节点的pod分配GPU设备。除此之外,如果你需要监控集群GPU资源使用情况,你可能还需要安装DCCM exporter结合Prometheus输出GPU资源监控信息。要安装和管理这么多的组件,对于运维
3743 0
NVIDIA GPU Operator分析一:NVIDIA驱动安装
|
机器学习/深度学习 缓存 并行计算
NVIDIA Tesla GPU系列P4、T4、P40以及V100参数性能对比
NVIDIA Tesla系列GPU适用于高性能计算(HPC)、深度学习等超大规模数据计算,Tesla系列GPU能够处理解析PB级的数据,速度比使用传统CPU快几个数量级,NVIDIA Tesla GPU系列P4、T4、P40以及V100是Tesla GPU系列的明星产品,云服务器吧分享NVIDIA.
64959 1
|
存储 编解码 安全
冥王峡谷安装steamos踩坑记录
记录冥王峡谷安装第三方steamos-holoiso时遇到的一些问题,其它玩家可参考
1799 0
|
Ubuntu Docker 容器
Ubuntu 挂载新磁盘
Ubuntu 挂载新磁盘
654 0
|
机器学习/深度学习 缓存 并行计算
NVIDIA Tesla GPU系列P4、T4、P40以及V100参数性能对比
NVIDIA Tesla系列GPU适用于高性能计算(HPC)、深度学习等超大规模数据计算,Tesla系列GPU能够处理解析PB级的数据,速度比使用传统CPU快几个数量级,NVIDIA Tesla GPU系列P4、T4、P40以及V100是Tesla GPU系列的明星产品,云服务器吧分享NVIDIA Tesla GPU系列P4、T4、P40以及V100参数性能对比:
|
Prometheus Kubernetes 监控
NVIDIA GPU Operator分析六:NVIDIA GPU Operator原理分析
背景我们知道,如果在Kubernetes中支持GPU设备调度,需要做如下的工作:节点上安装nvidia驱动节点上安装nvidia-docker集群部署gpu device plugin,用于为调度到该节点的pod分配GPU设备。除此之外,如果你需要监控集群GPU资源使用情况,你可能还需要安装DCCM exporter结合Prometheus输出GPU资源监控信息。要安装和管理这么多的组件,对于运维
2192 0
|
7月前
|
自然语言处理 数据可视化 PyTorch
双卡3090消费级显卡推理微调OpenBuddy-LLaMA2-70B最佳实践
9月4日,OpenBuddy发布700亿参数跨语言大模型 OpenBuddy-LLaMA2-70B,并以可商用的形态全面开源!现在已经全面上架魔搭ModelScope社区。
双卡3090消费级显卡推理微调OpenBuddy-LLaMA2-70B最佳实践
|
开发框架 IDE JavaScript
MAD,现代安卓开发技术:Android 领域开发方式的重大变革~(1)
MAD,现代安卓开发技术:Android 领域开发方式的重大变革~(1)
MAD,现代安卓开发技术:Android 领域开发方式的重大变革~(1)
|
网络协议
IPTables六—— IPTable规则优化IPSet
六、IPSet iptables在进行包过滤的时候,对每个数据包都过滤一遍iptables中的规则。假设我们有如下三条规则: -s 1.1.1.1 -p tcp accpet -s 2.2.2.2 -p tcp accpet -s 3.3.3.3 -p tcp accpet 那么当一个数据包源地址是3.3.3.3的时候,它首先去匹配第一条规则,不匹配再匹配第二条,最后在第三条匹配中了。
1278 0
|
并行计算 算法
CUDA 的块间同步方法
CUDA 的块间同步方法
980 0