GPU计算性能与渲染分析

GPU计算性能与渲染分析

GPU计算性能

单核CPU无论在PC端,还是服务器上,基本上已经退出历史舞台,目前主流的计算平台是使用多核(multiple cores)的CPU,以及众核(many cores)的GPU。另外处理器与内存访问速度差距也不断增大,为克服访存瓶颈,主要采用两种方法。其中多核CPU与单核CPU,都是利用Cache来掩盖访问系统内存的延迟,以减轻访存带宽的压力,其芯片的较大面积也都贡献给Cache。在另一端,GPU通过同时运行很多简单的线程,不使用或者只利用相对较小的Cache,而主要通过线程间的并行(Thread Level Parallelism, TLP)来隐藏内存访问延迟,当一部分线程因为访存停滞的时候,另一部分线程会接着执行,使得处理单元不会空闲下来。

目前的异构计算平台,同时采用这两种截然不同的架构,使得性能预测和优化都不太容易,面对一个给定的计算负载,应该如何分发能够达到性能最佳?对芯片架构师而言,在面积受限的芯片上,怎样合理部署处理单元、Register File和Cache等等也是让人挠头的事情。希望能够为理解优化性能提供参考,定义了一个统一仿真模型,可以容纳延展这两种不同特点的架构设计。这个模型对应一个想象的混合计算平台,该平台由很多简单的处理单元,以及较大的共享缓存构成,通过灵活配置一系列参数,包括处理单元个数、缓存大小以及缓存和内存的访问延迟等等,可以观察不同参数变化,对计算性能的影响。

为保持模型简单,论文假设所有线程相互不共享数据,且系统内存带宽足够大。如下图所示,当线程数量较少的时候,随着线程数量增加,性能开始提升,而当线程数量到达转折点,Cache不能够容纳所有线程的工作集时,性能反而下降。之后,随着线程数量越来越多,由于有足够的线程来掩盖Cache访问不命中带来内存访问延迟,性能又接着上升,直达到平台可获得的最大性能。可以认为MC Region对应多核CPU的情形,而MT Region自然对应有超多线程的GPU,MC Region和MT Region之间的性能波谷区域,在架构设计和程序优化中,都是要努力避免的。

 以下具体推导下参数曲线对应的公式,下表列出计算模型涉及的参数,左边是平台相关的,右边跟运算任务有关。

GPU计算

从处理单元设计和存储层次结构两个方面,探讨GPU不同于CPU的特点,再次确认反复申明的GPU,更重视整体的Throughput,而CPU更在乎具体任务的Latency。CPU和GPU从一开始就是为不同的目标而设计,CPU虽然也可以同时执行多个线程,但其旨在高效地处理串行指令,通过许多复杂技术优化,提高指令级并行,以便可以尽快执行串行程序。GPU同时执行成千上万个线程,牺牲单个线程性能换取整体性能最大化。下图对CPU与GPU的抽象架构进行了比对,其中Control是控制器、Core是处理单元、Cache指的是各级缓存、DRAM就是内存。可以看到GPU设计者将更多的晶体管用作执行单元,而不是像CPU那样用作复杂的控制逻辑和缓存。

在下面内容里,会具体讨论这两种设计面向带来的影响,尽量不拘泥具体产商的特定GPU产品,而是希望能给出一般的指引,但是因为文本材料的优势,以及在通用计算领域明显的优势地位,大概还是不能脱离Nvidia GPU的语境, AMD GPU的处理单元设计细节与Nvidia有较大不同,以后可以专文讨论。

这一次,中国有了自己的GPU架构

如果要说当下在芯片领域谁最热,GPU是第二,无人敢说第一。GPU是芯片领域里技术难度最高的主赛道的芯片之一,我国九成以上都是靠进口。以ChatGPT大模型应用的爆火把AI又炒上了一个新的高点,其背后的算力基础GPU芯片也成为“香饽饽”。英伟达的两款受限制的芯片被炒货炒到八万多、十万多甚至几十万,这背后显现的一方面是我国对GPU芯片大的市场需求,另一方面凸显了我国尚没有自主可控的GPU。

自主可控主要有两个维度:一种是购买第三方IP架构来自研GPU的内核;另外一种就是在GPU的IP架构也是自研的,同时GPU的内核也是自研。目前国内的GPU芯片企业大多是第一种,而要想真正在底层GPU的知识产权和技术迭代环节有主动权,必须要同时掌握IP架构和内核两个方面。

近日,国内企业中天恒星科技有限公司(Advanced Technology Stellar,简称中天恒星/ATS)第一款自研的GPU架构“天狼星”的推出,将为国产GPU芯片的发展迈出一个新的高度。中天恒星创始人黄永博士指出:“我们的架构全部是以恒星来命名的。Stellar是恒星、星宿、星座的意思,引申出来有超一流、卓越的含义。第二代架构命名为大角星;大角星是第二亮的恒星。只是因为距离地球更远,所以看起来没有天狼星亮;实际上,大角星比天狼星更亮,其亮度是太阳的110倍。”

一鸣惊人,中天恒星发布自研GPU架构“天狼星”

2023年6月15日,中天恒星以清华大学超过10年研究基础为依托,发布了其第一款GPU产品——“天狼星”。该芯片从数学公式推导开始,架构设计、算法模型、原理验证、硬件实现和驱动开发等环节全部正向设计。

据中天恒星创始人黄永博士介绍,“天狼星”GPU架构是多年长期耕耘的结果。2019年,第一代“天狼星”架构芯片设计验证完成。2021年,第一代“天狼星”架构GPU诞生;2022年,定义第二代GPU架构“大角星”;2023年,第一代“天狼星”架构GPU实现量产。据悉,2024年,中天恒星会继续优化基于“天狼星”架构的GPU。2025年,将量产第二代GPU架构“大角星”。

“天狼星”GPU架构有几大亮点:

具有3D图形引擎+2D图形加速+视频引擎。

自主可控/灵活优化的指令集和VLIW/SIMD机器指令集(ICCD’13);其中,自主可控/灵活优化的指令集,可保证GPU芯片迭代的软件兼容。

SIMT计算框架,可以充分利用图形应用的数据并行性( DATE’12.ICCD'13,TVLSI15)。

支持物理真实渲染(ACMComputingSurvey’14,SIGGRAPHASIA'14.15)。

Shader Core(Graphics Processing Cluster),包括SIMT独立指令执行单元、以32位浮点ALU为基础的统一图形架构(ICCD13)以及集成寄存器堆、纹理/数据缓存。

延迟聚集式全局线程调度技术(ISCA20、TPDS21、TCAD'21)。

具有良好性能伸缩性的片上互联架构(MICRO'20、TPDS’21)。

据中天恒星的介绍,其瞄准的是广阔的图形渲染市场,第一代“天狼星”架构GPU产品的目标市场是以括台式机、一体机、笔记本电脑为核心目标,逐渐拓展到大屏电视、数据中心、云渲染以及车载市场。

GPU用于渲染仍是行业主流

为何中天恒星要选择发力图形渲染这个市场呢?

GPU从一开始就是为图形渲染而生,其英文是Graphics Processing Unit,是一个可编程芯片,目的是把我们要呈现的场景,通过一系列计算之后投射在一个两维计算机屏幕上,GPU力图在屏幕上再现和真实世界完全一样的渲染效果,这就是GPU的作用。

但由于GPU拥有强大的并行计算能力,后来我们就用它加速机器学习的训练,就是所谓的算力的GPU。按照黄仁勋的说法,2023年算力GPU的产值会超过300亿美元的规模,到2027年会达到1500亿美元的量级。

但其实除了用于算力之外,用于渲染的GPU才是GPU市场的主流。2022年以独立显卡为代表的GPU大约占据80%以上的GPU市场,除了独立显卡,集成显卡领域也大抵如此,比如很多汽车的面板用嵌入式GPU做渲染。

渲染GPU的重要性还可以通过另一个层面来直观看出,比如说服务器的出货量和PC出货量,2021年全球服务器出货量1300万台,PC出货量3.5亿台左右。一般来说,潜在的每一台PC都会搭载一块图形显示的显卡,所以从这个意义上来讲,整个渲染GPU也是主流。

除此之外,大屏交互也是一个惊人的市场。在本次发布会上,国际信息显示学会中国总裁、fellow、俄罗斯工程院外籍院士、国际信息显示学会北京分会理事长严群博士指出:“现在所有显示器都可以称为被动式显示技术,观看的人对它的信息传输只有接收,没有互动,一旦显示屏加上很多GPU功能,有了沉浸式三维影像呈现、交互体验,那就不是传统的电视了,是一旦需要有交互体验的时候,我们就会重新回到大屏,重新回到这些有渲染的、真实的、你可以融入其中的体验,这种体验非常不得了。”

至于为何会选择图形渲染赛道,黄永博士在采访中解释到,“显示、图形渲染是目前需求量最大的一块市场,也是高度标准化的市场,唯一要做的就是提高性价比,这就是我们的商业逻辑的突破口,我们将从性价比着手,突破渲染、显示这样标准化的市场,进而再往定制、半定制、更高端的市场去突破。”

邓仰东博士在会上介绍了关于GPU芯片和渲染内容高度标准化的内容。他指出,邓仰东博士也在会上介绍到:“GPU芯片是高度标准化的芯片,渲染的内容是高度标准化的。”他指出,GPU芯片的标准主要由三个图形和计算标准界定。首先是OpenGL,它是国际标准化组织于1997年推出的,从2007年开始,OpenGL相继发布了三个版本,基本上确定了整个图形渲染所需完成的任务。与此同时,微软推出了DirectX,这是微软专门针对Windows平台的图形标准。OpenGL具有跨平台兼容性,而DirectX只适用于Windows平台。尽管DirectX具有更好的渲染效果,但它缺乏平台的兼容性。另外一个标准是OpenCL,最初是为图形纯计算能力而设计,后来也扩展到通用计算领域。

这三个标准在2007年至2017年间经历了黄金时代,并在2017年基本固化下来。换句话说,今天的图形标准基本上仍然是2007年的主要图形显示内容,GPU需要完成的核心任务基本上没有变化。这也意味着国内是有可能赶上NVIDIA在图形渲染GPU设计方面的进展。

“此外,GPU市场很大,我们不是为了抢夺英伟达和AMD的市场蛋糕,而是满足一部分没有得到满足的刚需市场。”黄永博士补充道。

自研GPU架构存在极高的技术挑战

台上一分钟,台下十年功。“天狼星”架构GPU能做到这样一鸣惊人,离不开中天恒星背后强大的技术研发团队。据了解,中天恒星研发团队由卡内基梅隆大学电子与计算机工程博士、清华大学软件学院、微电子学研究所副教授、NVIDIA合作教授邓仰东博士率领。邓仰东博士是中天恒星联合创始人、总架构师。邓博士是GPU通用计算最早研究人员之一,被誉为“GPU通用计算先行者”。邓博士长期从事图形处理器体系结构、并行计算研究和芯片产品开发工作;曾设计出全球第一个基于FPGA的GPU仿真平台;研究成果在ISCA、MICRO、等顶级会议和期刊发表。

邓仰东博士表示:“很多国产的GPU的IP授权主要购买的第三方。中天恒星的路线有所不同,核心的图形引擎完全自主设计的,所以3D图形引擎这块不涉及别人的知识产权,也没有IP的问题,全部是我们自己拥有,从0到完整架构的实现,都是我们自主的技术。”

自研GPU架构存在极高的技术挑战。

GPU设计有几个地方非常复杂:

一个是架构级的设计,这其实是个统筹的艺术。GPU本身的资源,在所谓的uni版的shader,所有的计算资源是一样的,大家都用32比特或者64比特的浮点运算单元,这是一个配合的问题。有很多个核共享L2的cash,然后每个核内有自身的计算单元,还有通往片外的各种通道,实际上片上还有一些针对图形的,比如像纹理的缓存;这些虽然很容易知道是什么样的模块,难的是如何配合起来实现整体性能最优。换言之,如何通过统筹协调,能够适应绝大多数图形应用。在大多数情况下,均衡的设计保持性能每秒至少30帧,这是一个极具挑战的地方。

二是,架构仿真的时间非常长,需要经验也需要直觉,去找出架构问题到底出在哪里。这方面也是一个很大的挑战,需要有多年的积累才能去做这件事。”

众所周知,GPU赛道是个很难的创业赛道。中天恒星的这种“明知山有虎,偏向虎山行的”魄力和勇气,让大家看到了中国新的未来之光,只有有这样的担当,有愚公移山的精神,才可以不断实现我们的自主创新,也才能不断打破美国对我们技术的封锁。随着自主研发的GPU架构“天狼星”的发布,国产自主可控的GPU也是未来可期。

 

 

参考文献链接

https://mp.weixin.qq.com/s/8RbJghCMxHHShZ0BIQvNgQ

posted @ 2023-06-28 04:59  吴建明wujianming  阅读(200)  评论(0编辑  收藏  举报