入门图形学:图形学原理(二)

news/2024/11/30 0:45:10/

        紧接上一篇:https://blog.csdn.net/yinhun2012/article/details/79865679

        这篇我们了解一下“显示处理器”,也称为GPU,显卡,视觉处理器等等,也就是做图像处理工作的微处理器芯片。我们对显卡应该不陌生,毕竟我们玩游戏都需要购买显卡,那么选购显卡就成了需要考虑的问题,即想价格便宜又想性能高,价格看下标价就行了,性能就不那么好判断了,我们必须了解显卡所有的参数以及参数后面的作用才能判断,比如通俗一点的显卡参数如下:

        1.显卡构架,越是先进的构架效能越高,比如nvidia的显卡构架比较有名的就是gtx750ti和gtx9系列的maxwell构架,和目前gtx10系的pascal构架(顺便说一下gtx750ti简直神卡,匹配9系性能,价格却低一大截,目前steam平台统计gtx750ti使用者最多)。

        2.流处理器(stream processors简称sp)数量,同代同构架下显卡流处理器越多性能越好,比如当年的hd4830就有800sp和640sp的数量差别,800sp就更好(我当年买的hd4830 640sp,因为800sp的贵100,js开核后炒的)。

        3.核芯频率,这个其实跟cpu的核芯频率一样,同代同构架下,频率越高越好,当然这个还可以超频。

        4.显存和位宽,前面我们谈到了帧缓存,就是需要存储器进行储存,这里显存就起到了这个作用,显存当然是必须要大到游戏够用才好了,同时GDDR5显存也有位宽之分,目前主流的256位宽允许一个时钟周期传送256bit数据,这就决定着显存的速度,当然是越高越好。

        5.光栅处理单元,前面我们形象的表示一根斜线就是进过光栅化后的像素点数组,光栅单元就是用来处理这种事情的。

        顺便放一张gpuz的图片,以便大家详细观察下显卡的参数,如下图:

        

        接下来说下显卡的发展史,看一下显卡从无到有再到现在如此标准化的进程。

        中央处理器CPU大家都知道,很早期电脑基本上就靠这个东西做运算,不论是数据运算,还是图形显示都靠这个。早期的显示器像素信息更新都是靠着cpu来计算每个像素的变化,计算完毕后通过I/O总线传递到视频卡的帧缓存中,然后刷新图像。这么一来,可以想象假如帧缓存数据非常大(分辨率高颜色位数高),那么CPU处理起来比较耗时,那刷新率就非常低了。这时候设计一个解放CPU耗时运算的专门处理图形的处理芯片就很有必要了,图形加速处理器GPU就应运而生,我们只需要通过高速I/O总线将数据传递给GPU,然后GPU进行像素变化计算后刷新图像。这样一来,CPU和GPU就各自分工明确,一个专门处理复杂逻辑运算,一个专门处理帧缓存图形数据,以后的PC硬件发展基本就沿着这个路线。

        图形处理器GPU是专门设计处理图形的,它执行图形任务比CPU快许多,现在一般图形处理器一秒钟可以处理几千万顶点和光栅化几亿甚至几十亿的片段(ps:这里我解释一下这两个参数的意义,一个游戏中各种模型场景都是顶点和贴图构成的,比如我们操作一个角色不断奔跑和打怪,那么这个模型的顶点就是不断的运动的,假设一个角色有10000个顶点,1s中运动了1m那么顶点插值运算中就必须依靠处理器的定点处理能力对角色的每个顶点的坐标进行变换,再说下片段(现阶段你就认为是像素点),一个1000*1000分辨率的屏幕1s中刷新60帧,那么就必须更新60000000像素点,假如分辨率更好刷新率更好,那么光栅几亿甚至几十亿的片段能力就很必要了)。

        下面列举一下每一代图形处理器的能力:

        1.第一代图形处理器(nvidia的tnt2,ati的rage和3dfx的voodoo3),这些图形处理器能够光栅化变换前的三角形和使用一两个纹理,但是并没有变换三维顶点的能力,顶点变换的计算还是得CPU处理。

        2.第二代图形处理器(nvidia的geforce255和geforce2,ati的radeon7500和s3的savage3d),这些图形处理器从CPU那里承担了顶点变换和光照的工作(Transformation and lighting),opengl和directx7都支持硬件顶点变换。

        3.第三代图形处理器(nvidia的geforce3和geforce4ti,ms的xbox和ati的radeon8500),这一代处理器提供了顶点编程能力,这些GPU让应用程序指定一系列的指令来处理顶点,而不是由opengl和directx7指定的传统变换和光照模型,但是这些指令并没有强大到被认为是真正的可编程,因为这些GPU虽然支持顶点指令编程,但是却不支持片段(像素)编程,但是就目前来说,已经成功一半了。

        4.第四代图形处理器(nvidia的geforcefx和ati的radeon9700),这些图形处理器同事提供了顶点和片段(像素)的可编程能力,这个级别的可编程能力使得复杂的顶点变换和像素着色操作从CPU转移到GPU成为可能,同时directx9和opengl显示了这些图形处理器的顶点和片段的可编程能力。

        顺便来一张各个时代nvidia GPU的特点和性能,如下图:

        

        制程:半导体芯片中电路与电路之间的距离,制程越小,代表单位面积内电路密度越高,性能越好。

        晶体管数量(百万):半导体元器件数量,越多代表着性能越好。

        反走样率(百万):光栅处理器处理图形生成离散的像素点会导致信息失真,这个叫做走样,用来减少或者消除这种效果的技术,称为反走样,这个速率也就是每秒钟填充32位RGBA像素的数量。

        多边形填充率(百万):也称为三角形生成率,前面我们在辅助工具中讲解了图形其实是由网格点组成的三角形经过拓扑结构组合而成,这个填充率也就是生成三角形的速率,越高越好。

        到这里我们基本上对图形处理器GPU有个大致的了解了,接下来我们就来学习学习图形处理器GPU具体做什么工作,到底GPU是怎么样把一串串数据处理成显示器上的一幅幅画面。

        

        


http://www.ppmy.cn/news/141006.html

相关文章

TPS5430DDAR 学习笔记

一.特性 1.输入电压范围:5.5-3.3V 2.输出电流:高达 3A 的持续(峰值为 4A) 3.过 110mΩ 集成式 MOSFET 开关实现高达 95% 的高效率 4.输出电压范围:可调节为低至 1.22V 5.500kHz 开关频率 (更小输出电感&…

Thinkpad T480 Win7 安装 INTEL HD620显卡驱动

问题描述 Thinkpad T480安装Win7操作系统,使用驱动精灵安装驱动程序,安装显卡驱动时无法正常安装。 解决方法 去Intel官网下载显卡驱动: 文件:win64_154519.4678.zip https://downloadcenter.intel.com/download/26836/Intel-Graphics-Driver-for-Windows-15-45- 解…

《Linux驱动:s3c2440 lcd 驱动分析--终结篇》

文章目录 一,前言二,LCD原理和硬件分析2.1 LCD原理解析2.2 硬件电路2.2.1 LCD背光电路2.2.2 LCD屏2.2.3 S3c2440主控 三,LCD应用平台总线-设备-驱动模型3.1 lcd 设备的加载和注册3.2 lcd 驱动的加载和注册3.2.1 编译进内核,加载驱…

A40I led driver

LDE DRIVER 亲试有效 #include <linux/module.h> #include <linux/kernel.h> #include <linux/init.h> #include <linux/fs.h> #include <linux/slab.h> #include <linux/uaccess.h> #include <linux/io.h> #include <linux/cdev…

ati hd 6470m驱动

ati hd 6470m驱动是官方提供的一款显卡驱动&#xff0c;本站收集提供高速下载&#xff0c;用于解决显卡不能正常运行&#xff0c;无法正常使用的问题&#xff0c;本动适用于&#xff1a;Windows XP / Windows 7 / Windows 8 / Windows 10 32/64位操作系统。有需要的朋友可以来本…

Linux-2440下的DMA驱动(详解)

DMA(Direct Memory Access) 即直接存储器访问&#xff0c; DMA 传输方式无需 CPU 直接控制传输&#xff0c;通过硬件为 RAM 、I/O 设备开辟一条直接传送数据的通路&#xff0c;能使 CPU 的效率大为提高。 学了这么多驱动&#xff0c;不难推出DMA的编写套路: 1)注册DMA中断,分…

DALSA Xtium系列MX4采集卡和AVAL GLOBAL APX-3324A采集卡参数对比

DALSA Xtium系列MX4采集卡和AVAL GLOBAL APX-3324A采集卡参数对比 DALSA Xtium系列采集卡Xtium-CL MX4 Teledyne DALSA公司已正式发布Xtium CL MX4采集卡&#xff0c;它采用了工业级PCI Express™ Gen 2.0标准&#xff0c;是Xtium采集卡系列中的新成员。Xtium-CLMX4采集卡基于…

PCF8574AT驱动LCD1602

STM32用IIC驱动LCD1602 介绍PCF8574AT选址芯片接线图 LCD1602显示问题乱码问题 实现代码 介绍 网上寻遍了资料发现驱动LCD1602液晶屏的程序几乎都是4线或8线数据线。基本思路都是直接操作I/O&#xff0c;但是缺点是接线太多&#xff0c;十分麻烦。PCF8574和PCF8574AT这两种芯片…