GPU

计算机基础之GPU结构及工作原理简析

GPU全称是GraphicProcessing Unit--图形处理器,其最大的作用就是进行各种绘制计算机图形所需的运算,包括顶点设置、光影、像素操作等。GPU实际上是一组图形函数的集合,而这些函数有硬件实现,只要用于3D游戏中物体移动时的坐标转换及光源处理。在很久以前,这些工作都是由CPU配合特定软件进行的,后来随着图像的复杂程度越来越高,单纯由CPU进行这项工作对于CPU的负荷远远超出了CPU的正常性能范围,这个时候就需要一个在图形处理过程中担当重任的角色,GPU也就是从那时起正式诞生了。

计算机基础之GPU结构及工作原理简析

从GPU的结构示意图上来看,一块标准的GPU主要包括通用计算单元、控制器和寄存器,从这些模块上来看,是不是跟和CPU的内部结构很像呢?

Imagination在AutoSens大会上精彩亮相

作者:Bryce Johnstone

最近,Imagination参加了在底特律密歇根科学中心举办的AutoSens大会,本次大会主要面向汽车传感器行业的工程师和相关人士,Imagination在会议中展示了公司在汽车领域的持续投入。

在AutoSens大会上Imagination精彩亮相

会议期间Imagination展台上重点展示的是我们的神经网络加速器,包括在我们GPU平台以及最近推出的PowerVR Series 2NX FPGA平台上的运行效果。

首先我们在Chromebook笔记本上运行一个实时Demo,展示了用单镜头监测器(SSD)快速检测和分类诸如人脸等对象的能力,令人印象深刻的是即使采用的GPU已经有几年的历史了,但是仍然取得了出色的性能。

李力游:Imagination将为中国带来无限想象力

2018年5月14日,在正式就任Imagination CEO一个多月后,李力游博士(Dr. Leo Li)终于出现在中国媒体面前。作为GSA的主席,这位曾带领展讯的业界领袖,将会带领Imagination如何发展?是否会将他曾经提倡的“农民文化”带入Imagination?是否会给中国的半导体产业发展带来不同以往的“想象力”?让我们走进媒体交流会现场,一起了解李博士分享的精彩观点。

中国是最大的市场而且非常需要发展半导体

李力游:Imagination是一家全球性公司,我们的IP不仅仅提供给中国,但中国对Imagination来说非常重要,具体有三大好处:第一,中国是最大的市场;第二,在人工智能方面,中国的发展比美国还要快;第三,中国非常需要发展半导体。从这些意义上讲,Imagination在中国大有用武之地,而且可以真正地帮到中国的企业、客户和产品。

Imagination在中国的业务正不断增长,队伍也在不断扩大,我们在市场、销售、技术、支持、生态各个方面都在不断地增强力量,希望可以为中国的生态、市场和客户提供更好的支持。

今天,Imagination在北京举行了一场小型媒体交流会,Imagination CEO李力游博士、副总裁兼中国区总经理刘国军、中国市场和业务拓展总监柯川、市场营销与传播副总裁David Harold及一众高管出席了交流会。

9月23日,中国的私人资本Canyon Bridge以5.5亿英镑(约49亿元人民币)收购了Imagination,溢价约为42%。随即在今年4月,紫光集团前联席总裁李力游博士宣布加入Imagination,正式接任CEO一职。

对话Imagination CEO李力游:大力加码人工智能 现场叫板高通
(Imagination市场营销与传播副总裁David Harold)

在交流会上,李力游博士直白地说,自己最感兴趣的是人工智能,接任Imagination CEO一职的主要原因就是希望通过GPU把AI做好。

一、布局六大主要市场:AI为重点领域

GPU学习笔记

Graphics Processing Unit(GPU),即可编程图形处理单元, 通常也称之为可编程图形硬件。

由于 GPU 具有高并行结构(highly parallel structure),所以 GPU 在处理图形数据和复杂算法方面拥有比 CPU 更高的效率。图 1 GPU VS CPU 展示了 GPU 和 CPU 在结构上的差异,CPU 大部分面积为控制器和寄存器,与之相比,GPU 拥有更多的 ALU(Arithmetic Logic Unit,逻辑运算单元)用于数据处理,而非数据高速缓存和流控制,这样的结构适合对密集型数据进行并行处理。CPU 执行计算任务时,一个时刻只处理一个数据,不存在真正意义上的并行,而 GPU 具有多个处理器核,在一个时刻可以并行处理多个数据。

GPU学习笔记

三维渲染中的裁剪总汇

裁剪是个很大的概念,裁剪包括了视锥体裁剪(应用程序阶段)、视口裁剪(图元装配——几何阶段的最后一步)、背面剔除(光栅化阶段)、遮挡剔除(光栅化阶段)。

iOS构建流畅的交互界面--CPU,GPU资源消耗的原因和解决方案

CPU资源消耗的原因和解决方案

对象创建

轻量对象代替重量对象
* 不需要响应触摸事件的控件:CALayer显示
* 对象不涉及UI操作,则尽量放到后台线程创建
* 包含有CALayer的控件只能在主线程创建和操作
* 通过Storyboard 创建视图对象时,其资源消耗会比直接通过代码创建对象要大非常多,在性能敏感的界面里,storyboard不是一个好的技术选择
* 尽量推迟对象创建的时间,并把对象的创建分散到多个任务中去。
* 对象的复用代价比释放,创建新对象要小,这类对象应当尽量放到一个缓存池里复用

对象调整

* CALayer:CALayer内部并没有属性,当调用属性方法时,它内部是通过运行时resolveInstanceMethod为对象临时添加一个方法,并把对应属性值保存到内部的一个Dictionary里,同时还会通知delegate,创建动画等等,非常消耗资源。
* UIView的关于显示相关的属性(frame/bound/transform)等实际上都是CALayer属性映射来的,所以对UIView的这些属性进行调整时,消耗的资源要远大于一般的属性,所以,尽量减少不必要的属性修改

GPU渲染之OpenGL的GPU管线

GPU渲染流水线,是硬件真正体现渲染概念的操作过程,也是最终将图元画到2D屏幕上的阶段。GPU管线涵盖了渲染流程的几何阶段和光栅化阶段,但对开发者而言,只有对顶点和片段着色器有可编程控制权,其他一律不可编程。如下图:

GPU渲染之OpenGL的GPU管线

简单总结GPU管线,这阶段中主要是对图元进行操作。首先,将由应用阶段加载到显存中的顶点数据(由drawCall指定后)作为输入传递给顶点着色器。接着,顶点着色器首先对图元的每个顶点设置模型视图变换及投影变换(即右乘MVP矩阵),然后将变换后的顶点按照摄像机视椎体定义(即透视投影,或正投影)进行裁剪,将不在视野内的顶点去掉并剔除某些三角面片。最后到几何阶段的屏幕映射,负责把修改过的图元的坐标转换到屏幕坐标系中(即投影到屏幕上)。

步入计算多元化时代,异构计算为什么发展空间巨大?

在互联网行业,随着信息化的普及,数据量的暴增使得人们对存储空间又有了新要求,同时,机器学习、人工智能、无人驾驶、工业仿真等领域的崛起,使得通用CPU在处理海量计算、海量数据/图片时遇到越来越多的性能瓶颈,如并行度不高、带宽不够、时延高等。

为了应对计算多元化的需求,越来越多的场景开始引入GPU、FPGA等硬件进行加速,异构计算应运而生。异构计算(Heterogeneous Computing),主要指不同类型的指令集和体系架构的计算单元组成的系统的计算方式。

20世纪80年代,异构计算技术就已经诞生了。所谓的异构,就是CPU、DSP、GPU、ASIC、协处理器、FPGA等各种计算单元、使用不同的类型指令集、不同的体系架构的计算单元,组成一个混合的系统,执行计算的特殊方式,就叫做“异构计算”。

特别是在人工智能领域,异构计算大有可为。众所周知,AI意味着对计算力的超高要求,目前以GPU为代表的异构计算已成为加速AI创新的新一代计算架构。

我们为什么需要异构计算?

学习shader之前必须知道的东西——渲染管线

所谓GPU的渲染管线,听起来好像很高深的样子,其实我们可以把它理解为一个流程,就是我们告诉GPU一堆数据,最后得出来一副二维图像,而这些数据就包括了”视点、三维物体、光源、照明模型、纹理”等元素。
在各种图形学的书中,渲染管线主要分为三个阶段:应用程序阶段、几何阶段、光栅阶段。

1、应用程序阶段

这个阶段相对比较好理解,就比如我们在Unity里开发了一个游戏,其实很多底层的东西Unity都帮我们实现好了,例如碰撞检测、视锥剪裁等等,这个阶段主要是和CPU、内存打交道,在把该计算的都计算完以后,在这个阶段的末端,这些计算好的数据(顶点坐标、法向量、纹理坐标、纹理)就会通过数据总线传给图形硬件,作为我们进一步处理的源数据。

2、几何阶段

主要负责顶点坐标变换、光照、裁剪、投影以及屏幕映射,改阶段基于GPU进行运算,在该阶段的末端得到了经过变换和投影之后的顶点坐标、颜色、以及纹理坐标。简而言之,几何阶段的主要工作就是“变换三维顶点坐标”和“光照计算”。

同步内容
--电子创新网--
粤ICP备12070055号