版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机图形学第十章基于GPU的图形计算供《现代计算机图形学基础》配套使用1提纲图形处理器GPU数值计算GPU快速建模GPU实时绘制21.1概念1.1.1
GraphicsProcessingUnit图形处理器,由数以千计的更小、更高效的核心(专为同时处理多重任务而设计)组成的大规模并行计算架构31.1概念1.1.1
GraphicsProcessingUnit硬件结构Streamingprocessor(SP):指令和任务处理的最基本单元Streamingmultiprocessor(SM):多个SP和内存、寄存器等资源Warp:执行程序的调度单位软件结构Thread(线程)Block(线程块)Grid(线程网格)1.1概念1.1.1
GraphicsProcessingUnitGPUvs.CPUGPU:单一性,众多ALU,很少控制器,很少Cache,独自寄存器CPU:通用性,很少ALU,较多控制器,众多Cache,公用寄存器51.1概念1.1.2GPU并行处理利用众多的计算核心,通过流式并行计算模式,同一时刻并行处理多个数据,解决极高的运算密度、并发线程数量和频繁地存储器访问等数据访问和计算问题计算密集型任务:频繁的寄存器运算易于并行的任务:同时的数据处理61.1概念1.1.2GPU并行处理图形学起源7光线跟踪:forallpixels(i,j):Calculateraypointanddirectionin3dspace;ifrayintersectsobject: calculatelightingatclosestobject storecolorof(i,j)1.2GPU的发展1.2.1GPU发展第1代:3dfxVoodoo(1996)第一款3D游戏视频卡几何元素操作在CPU部分片元操作在GPU纹理映射Z-缓存81.2GPU的发展1.2.1GPU发展第2代:GeForce7500(1998)几何元素操作转移至GPU支持多种类型的纹理映射凹凸映射环境光映射使用AGP取代PCI进行数据传输91.2GPU的发展1.2.1GPU发展第3代:GeForce3(2001)顶点着色器,第一次允许几何操作GPU编程支持更多类型的纹理映射体纹理多重采样101.2GPU的发展1.2.1GPU发展第4代:GeForce6(2003)完全GPU编程顶点着色器和片元着色器可直接访问纹理内存111.2GPU的发展1.2.1GPU发展第5代:GeForce8800(2006)通用计算目的的图形处理器(GPGPU)出现引入几何着色器(geometryshader)121.2GPU的发展1.2.2GPU计算能力的发展2008年~2017年,GPU计算能力提升7倍,而CPU计算能力仅提升不到2倍131.3CUDA的发展NVIDIA公司开发的并行计算平台和编程模型CUDA指令集架构(ISA)GPU显卡内部计算141.3CUDA的发展2010年以前CUDA1.0~3.0支持C语言和C++语言编程Fermi构架的GPU151.3CUDA的发展2010年~2020年~CUDA11.0支持深度学习、高性能计算等Ampere构架的GPU161.3CUDA的发展2020年~至今~CUDA12.0GPU底层访问Hopper/AdaLovelace构架的GPU17提纲图形处理器GPU数值计算GPU快速建模GPU实时绘制182.1原理一般准则19程序代码+GPUCPUUseGPUtoParallelize计算密集型任务RestofSequentialCPUCode2.1原理GPU执行任务(CUDA)内核(kernel)被唤醒,任务被分解为线程(thread)线程在GPU内以线程网格(grid)和块(block)的形式组织三维数组形式每一个格指定一个内核20dim3dimBlock(8,8,8);dim3dimGrid(100,100,1);Kernel<<<dimGrid,dimBlock>>>(…);However,we'lloftenonlyworkwith1
dimensionalgridsandblockse.g.Kernel<<<block_count,block_size>>>(…);线程数=格数x块数2.1原理GPU执行任务(CUDA)内核(kernel)被唤醒,任务被分解为线程(thread)线程在GPU内以线程网格(grid)和块(block)的形式组织三维数组形式每一个网格指定一个内核每一个块指定一个SM在SM内部,块分解为执行共同指令的线程包(warp)在SM内部,所有包同时执
行212.1原理GPU执行任务(CUDA)22GPU心脏调度单位2.1原理GPU执行任务(CUDA)内存组成全局内存:globalmem共享内存:sharedmem局部内存:localmem寄存器:register23GPU核心:NVIDIA全局内存:SAMSUNGNvidiaGeForceGTX7802.1原理GPU执行任务(CUDA)内存访问全局内存:网格共享内存:块局部内存:线程寄存器:线程242.2通用数值计算并行计算例:数组递增a[i]+125定义一维块的大小定义网格的数目线程的索引2.2通用数值计算并行计算例:数组递增a[i]+126数组大小a[34603008]CPU:156毫秒Intel(R)Core(TM)i5-2400CPU@3.10GHz3.10GHzGPU:49毫秒块:256(一维)网格:32(一维)NVIDIAQuadro20002.2通用数值计算并行计算例:矩阵相加
a[i][j]+b[i][j]27定义2维块和每个块的二维线程集合每个线程认定操作的矩阵元素对象2.2通用数值计算并行计算例:矩阵相加
a[i][j]+b[i][j]28矩阵大小5120x5120CPU:203毫秒Intel(R)Core(TM)i5-2400CPU@3.10GHz3.10GHzGPU:70毫秒块:256x256(二维)网格:20x20(二维)NVIDIAQuadro2000提纲图形处理器GPU数值计算GPU快速建模GPU实时绘制293.1基于GPU加速的NURBS建模思想利用GPU提高B样条基函数计算效率。正向计算:通过已知的参数值u和v,求解NURBS曲面上对应点的三维坐标(x,y,z)303.1基于GPU加速的NURBS建模思想采用一维或二维纹理存储节点向量、控制顶点、权重因子等通过片元着色器实现GPU编程313.2基于GPU加速的泊松重建思想利用GPU的高效运算能力,设计构建一个特殊的八叉树,并将其与泊松表面重构算进行结合,实现了高效的表面重建323.2基于GPU加速的泊松重建方法利用GPU,实时构建八叉树,按层构建,每层节点同时构建33vertex数组:v.nodes记录所有使用顶点v的八叉树节点edge数组:记录边的两个顶点face数组:记录面的四条边node数组:xyzkey:从根节点到深度为D的一个节点的路径为:x1y1z1x2y2z2···xDyDzDSamplepoints:对每个节点t,记录其包含的节点数t.pnum,及第一个包含的子节点的索引t.pidxConnectivityPointers:记录父亲,8个孩子,27个邻居(包括自己),顶点,边,面x,y,z0:轴负方向1:轴正方向3.2基于GPU加速的泊松重建方法将泊松表面重建算法与八叉树结合,在GPU上快速计算Laplacian方程,并提取网格34构建Laplacian方程Lx=b利用multigridsolver计算线性方程组计算等值面利用marchingcube方法提取网格GPU箱函数3.2基于GPU加速的泊松重建方法将泊松表面重建算法与八叉树结合,在GPU上快速计算Laplacian方程,并提取网格35构建Laplacian方程Lx=b利用multigridsolver计算线性方程组计算等值面利用marchingcube方法提取网格GPUGPU共轭梯度法顶点并行计算标量值叶节点并行抽取截面3.2基于GPU加速的泊松重建结果36点云:#216643重建时间:296ms点云:#259560重建时间:206ms提纲图形处理器GPU数值计算GPU快速建模GPU实时绘制374.1基于GPU的光线跟踪绘制思想利用GPU的线程并行处理,构建KD树数据结构,提高光线跟踪过程中几何元素遍历、求交、着色等处理384.1基于GPU的光线跟踪绘制方法利用GPU构建三维场景的KD树表示,加速遍历和求交运算394.1基于GPU的光线跟踪绘制结果(Demo)40GPUCPU4.2基于GPU的辐射度绘制思想辐射度绘制中,不同面片之间形式因子的计算和相应辐射度数值的计算占据约90%的时间借助GPU提高形式因子计算效率414.2基于GPU的辐射度绘制思想采用辐射度纹理和残差纹理内存来记录面片上的辐射度数值借助片元着色器来做形式因子的计算424.2基于GPU的辐射度绘制结果
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 泵站课程设计关键词
- 超市绩效管理课程设计
- 新教材高中语文 古诗词诵读《桂枝香 金陵怀古》(1)教案 部编版必修下册
- 减速器SolidWorks教程优化课程设计
- 本科课程设计评分标准
- 欺诈检测嵌入技术课程设计
- 厂房桩基础课程设计
- 电机调速PID控制方案课程设计
- 语文19海滨小城教案
- 吉林长春版《心理健康》六年级上 第六课 学习要有计划性 教案
- (2026年)重症后管理专家共识应用经验分享学习与解读课件
- 浦北县小江镇招聘社区网格员考试试题附答案详解
- 上海八年级数学上册-一元二次方程的应用-实际问题(同步练习)
- 2026年全市统计基本单位名录库题库
- 大学新教师入职培训
- 科室内部投诉管理制度
- 羊水栓塞案例分析
- 2026年陕西水务发展集团及所属企业招聘(20人)参考考试试题及答案解析
- 点胶工艺技术
- 拉动式生产培训
- 烘焙卫生安全培训课件
评论
0/150
提交评论