(电子科学与技术专业论文)基于计算智能应用映射的gpu体系结构研究.pdf_第1页
(电子科学与技术专业论文)基于计算智能应用映射的gpu体系结构研究.pdf_第2页
(电子科学与技术专业论文)基于计算智能应用映射的gpu体系结构研究.pdf_第3页
(电子科学与技术专业论文)基于计算智能应用映射的gpu体系结构研究.pdf_第4页
(电子科学与技术专业论文)基于计算智能应用映射的gpu体系结构研究.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(电子科学与技术专业论文)基于计算智能应用映射的gpu体系结构研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国防科学技术大学研究生院硕十学位论文 a b s t r a g t i n2 0 0 6 ,n v i d ah a si s s u e dt h ec u d a ( c o m p u t eu n i f i e dd e v i c ea r c h i t e c t u r e ) g p ua r c h i t e c t u r ea n da n n o u n c e dt h a tt h ea r c h i t e c t u r ec a r la c h i e v eg r e a tp e r f o r m a n c e w i t ht h el o w e s tc o s t t h e n ,m a n ye x p e l sf o c u s0 1 1t h er e s e a r c ho fg p ua r c h i t e c t u r e e s t a b l i s h i n gr e l a t i o n sb ym e a n so ft r a i n i n g ,c o m p u t a t i o n a li n t e l l i g e n c er e s o l v e ss o m e p r o b l e m sb a s e do nt h ed a t ao fp r o b l e m s b e c a u s eo fi t s c h a r a c t e r i s t i c ss u c ha s s e l f - a d a p t a t i o n ,d i s p o s i n gp r o b l e ms p e e dw h i c hi sa p p r o a c hh u m a nb e i n ga n de t e , c o m p u t a t i o n a li n t e l l i g e n c ei sa p p l i e di na l lk i n do ff i e l d s ,f o re x a m p l ei n d u s t r yc o n t r o l , m o d e li d e n t i f y ,g e ti n f o r m a t i o na u t o m a t i c a l l y ,e c o n o m i cm a n a g ea n de t c a f t e rr e a d i n g m a n yd o m e s t i co ro v e r s e a st h e s e s ,w et h i n ki ti sw o r t h f u la n di m p o r t a n tt or e s e a r c h g p ua r c h i t e c t u r eb a s e do na p p l i c a t i o n si nc o m p u t a t i o n a li n t e l l i g e n c ef i e l d t h e r ea r em a n yi n n o v a t i o n si nt h i st h e s i s ( 1 ) t h ec u d a ( c o m p u t eu n i f i e dd e v i c ea r c h i t e c t u r e ) t e c h n o l o g yp r o v i d e s c o n v e n i e n c e so fg e n e r a lc o m p u t a t i o nf o rp r o g r a m m e r s ,b u tt h e r ei sn oa p p l i c a t i o n p r o g r a m m i n gi n t e r f a c ef o rg e n e r a t i n gr a n d o m n u m b e ro nc u d a i nt h i sp a p e r ,n o to n l y w em a k e ss o m er e s e a r c ha b o u th o wt og e n e r a t er a n d o mn u m b e r sa n dp r o p o s e st w o k i n d so fi m p l e m e n t a t i o nt e c h n i q u e so fp r o d u c i n gr a n d o mn u m b e ra l g o r i t h mo nc u d a , b u ta l s ow ea n a l y z e sa n di m p r o v e si t sp e r f o r m a n c eo nc u d a f o rg e n e t i ca l g o r i t h m , t h i st h e s i su s e st h eb e t t e ro n et og e n e r a t er a n d o mn u m b e r ( 2 ) i ts u m su pt h e o r i e sa n df o c u so fr e s e a r c h e r si nc o m p u t a t i o n a li n t e l l i g e n c e i n c l u d i n gg e n e t i ca l g o r i t h ma n dn e u r a ln e t w o r k e m p l o y e dc h a r a c t e r so fg p u a r c h i t e c t u r ea n di t sh a r d w a r er e s o u r c e ,w ec h a n g et h ep a r a l l e lm o d e lo fg e n e t i c a l g o r i t h m 、i m p l e m e n ti to nc u d as u c c e s s f u l l ya n di m p r o v e sp e r f o r m a n c eo fg e n e t i c a l g o r i t h m m o r e o v e r , w i t h o u ta ta n yc o s to fp e r f o r m a n c e ,w ee n h a n c et h ea c c u r a c yo f g e n e t i ca l g o r i t h m a tt h es a m et i m e ,w ea n a l y s e st h ei n f l u e n c eo fp o p u l a t i o ns i z ea n d g e n e r a t i o n so fe v o l u t i o nt oe f f i c i e n c ya n de f f e c t u s i n gc u d ap r o g r a me n v i r o n m e n t , w ec a r r yo u tp a r a l l e li m p l e m e n t a t i o no fb a c k - p r o p a g a t en e u r a ln e t w o r kw i t hai n s t a n c e o ff i g u r i n go u tq u a d r a t i c b e s i d e s ,w es h o wt h ei n f l u e n c eo fd i f f e r e n tn u m b e rt o p e r f o r m a n c e i nn e u r a ln e t w o r k ( 3 ) t h i sp a p e rr u n st w ob a s i ca l g o r i t h m si nc o m p u t a t i o n a li n t e l l i g e n c ef i e l do n d i f f e r e n tv i r t u a lg p ua r c h i t e c t u r ea n d g e t s s o l l l ec h a r a c t e r so fc o m p u t a t i o n a l i n t e l l i g e n c ef i e l d b e s i d e s ,i ta n a l y z e st h er e s u l ta n ds u m su pt h ec h a r a c t e ro fd r a m a c c e s s e s b a s e do ni t sc h a r a c t e r ,t h i st h e s i sp r o p o s e dag p ua r c h i t e c t u r ew h i c hh a sa n e wa d d r e s sm a p p i n gm e c h a n i s mi nm e m o r ys y s t e m t h e n ,i tv a l i d a t e st h eg p u a r c h i t e c t u r ew i t l lt w ob a s i ca l g o r i t h m si nc o m p u t a t i o n a li n t e l l i g e n c ef i e l d t h ed a t a s h o wt h en e wa d d r e s sm a p p i n gm e c h a n i s mc a l li m p r o v et h ep e r f o r m a n c eo fn e u r a l n e t w o r ka l g o r i t h m 第i i i 页 国防科学技术大学研究生院硕十学位论文 ( 4 ) e m p l o y e dg p g p u s i r e ,as i m u l a t o ro fg p ua r c h i t e c t u r e ,t h i sp a p e rs t a t e st h e i n f l u e n c eo fs o m ee l e m e n t so fg p ua r c h i t e c t u r et oi t sp e r f o r m a n c ea n dp r o v i d em a n y e x p e r i m e n td a t at or e a d e r s u m m i n gu pt h er e s u l t ,a u t h o r sp u tf o r w a r ds o m ei d e aa b o u t h o wt od e s i g ng p ua r c h i t e c t u r e t h e s ew o r k sm a k es o m eu s e f u lf o u n d a t i o na n d d i r e c t i o no fr e s e a r c ha b o u th o wt od e s i g na r c h i t e c t u r ea n ds o f t w a r ei nt h ef u t u r e t h es u b j e c ti sap a r to fn a t i o n a l8 6 3p r o j e c t “r e s e a r c ho nk e yt e c h n o l o g i e so f g e n e r a lp u r p o s es t r e a mp r o c e s s o ra r c h i t e c t u r e ”“r e s e a r c ho nr e c o n f i g u r a b l e h e t e r o g e n e o u ss t r e a m i n gp r o c e s s o ra r c h i t e c t u r et e c h n o l o g i e s a n dn a t i o n a ln a t u r a l p r o j e c t “r e s e a r c ho nk e yt e c h n o l o g i e so fm u l t i s t r e a ma r c h i t e c t u r eb a s e do ns c i e n c e c o m p u t i n g ” k e yw o r d s :c u d a ,g p ua r c h i t e c t u r e ,r a n d o mn u m b e r ,g e n e t i c a l g o r i t h m ( g a ) ,n e u r a lc o m p u t e ,c o m p u t i n gi n t e l l i g e n c e ,a d d r e s sm a p p i n g m e c h a n i s m 第i v 页 国防科学技术大学研究生院硕七学位论文 图2 1 图2 2 图2 3 图2 4 图2 5 图2 6 图2 7 图3 1 图3 2 图3 3 图3 4 图3 5 图3 6 图3 7 图3 8 图3 9 图3 1 0 图3 11 图3 1 2 图3 1 3 图3 1 4 图4 1 图4 2 图4 3 图4 4 图5 1 图5 2 图5 3 图5 4 图5 5 图5 6 图5 7 图目录 非统一架构下的g p u 体系结构7 统一架构下的g p u 组成示意图l o t p c 的内部组成1 l g p u 的内存模型1 2 几种网络拓扑结构1 4 d d r j i 结构图1 5 g d d i b 结构图1 6 遗传算法示意图1 9 迁移示意图2 0 分布式示意图2 l 随机数数量为5 1 2 效果图2 4 随机数数量为2 0 4 8 0 0 效果图2 4 随机数数量为2 0 4 8 0 0 性能图2 5 c u d a 平台下并行模型2 7 迁移示意图2 8 遗传代数为1 0 0 0 时性能图3 0 群体大小为1 0 2 4 0 0 时性能图3 0 群体大小为1 0 2 4 0 0 时准确度3 l 遗传代数为1 0 0 0 时的准确度3 1 群体大小为1 0 2 4 0 0 时加速比3 2 遗传代数为1 0 0 0 时精确度3 2 基本神经元结构一3 6 b p 神经网络结构3 7 二次规划神经网络实现结构图3 9 神经网络性能图4 1 计算智能基本算法访存指令特征4 6 l g l 0 0 0 5 1 2 0 0 访存特征4 7 遗传算法d r a m 中各b a n k 分布特征4 7 神经网络访存特征4 7 神经网络d r a m 中各b a n k 分布特征4 8 分支结构对程序性能的影响4 9 c a c h e 大小对程序性能的影响一5 0 第1 l l 页 国防科学技术大学研究生院硕士学位论文 图5 8 图5 9 图5 1 0 图5 11 图5 1 2 图5 1 3 图5 1 4 图5 1 5 c a c h e 组数目对性能的影响一5 0 c a c h e 替换策略对性能的影响5 1 网络的拓扑结构对程序性能的影响一5 2 内存调度策略对程序性能的影响5 3 由l i i l 提出的消除体别名冲突的地址映射机制5 5 由z h a n g 提出的消除体别名冲突的地址映射机制5 6 各种地址映射机制对性能的影响5 6 消除体别名冲突的地址映射机制对性能的影响5 7 第1 v 页 国防科学技术人学研究生院硕十学位论文 表目录 表5 1g p u 体系结构基本配置4 5 第i 页 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得 的研究成果尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它 教育机构的学位或证书而使用过的材料与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名: 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权 国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子 文档,允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文 ( 保密学位论文在解密后适用本授权书。) 学位论文作者签名: 作者指导教师签名: 日期呻年忱月加 日期:砷年,二月毋日 国防科学技术大学研究生院硕士学位论文 第一章绪论 g p u ( g r a p h i cp r o c e s s o ru n i t ) 图像处理单元是一个图像芯片,整合几何编程 能力和像素处理能力。传统的g p u 单纯地为加速图像的实时处理而设计。因为与 图像处理相关应用的程序并行性强,计算量大,实时性强,为满足其需要,g p u 通常设计成拥有数百个浮点计算单元,具有超强的浮点计算能力的处理器。在当 前计算机中,g p u 已成为必不可少的组件之一,在不进行图像处理时,g p u 处于 空闲状态,因此浪费大量的计算资源。为了充分利用g p u 中强大的浮点计算能力, 研究人员尝试将一些非图像领域内的应用映射到在g p u 上运行,使c p u 与g p u 协同计算,从而提高整个计算机系统的效能。在统一架构g p u 和c u d a 平台出现 之前,这些通用计算的映射工作都是针对于非统一架构的g p u 进行的,十分繁琐 而且所取得的效果不太明显。2 0 0 6 年,n v d i a 发布c u d a 编程模型及基于统一 架构的g p u 体系结构g 8 0 。同年,a m d 也推出将两个统一架构g p u 体系结构集 成在一起的r 6 8 0 。这种g p u 体系结构改进传统g p u 体系结构流水线的缺点,为 在g p u 上进行众多通用领域内的并行计算提供硬件基础,同时c u d a 编程模型十 分方便简单,为在g p u 上进行应用映射提供软件工具,两者的推出使得在g p u 上进行通用计算越来越方便,必定也会越来越普遍,因此对统一架构g p u 体系结 构的研究显得尤为重要。通常,不同类型的应用程序具有不同的指令特征和内存 访问特征,将来定制的计算机体系结构必将会随着应用的不同,组成部分和特点 也不尽相同,g p u 体系结构同样也不例外。计算智能是以数据为基础,通过训练 建立联系,进行问题求解。因其具有计算适应性、计算容错性、接近人的速度、 误差率与人相近等特点,而广泛应用于工业控制,模式识别,知识自动获取,经 济管理,生物医学,网络智能自动化等工程应用各个方面。设计专用的g p u 体系 结构来处理计算智能应用领域内的运算具有重要意义和应用价值。 1 1 课题背景 统一架构下的g p u 改进s i m d 流水线的体系结构,是一种单指令多线程 ( s i m p ) 处理机,包含众多简单处理核心,具有大量的浮点计算资源,因此具有 超强的浮点计算能力。近几前来,充分利用g p u 硬件资源进行非图像领域内的并 行计算研究是一个新颖的研究方向。然而,不同的应用程序因其内部算法结构不 同,在g p u 上所获得的性能加速也存在较大差异。在n v d i a 发布的s d k 中,大 量实验已证明统一架构g p u 在某些通用计算领域表现出强大的计算能力,包括: 分子动力学、l u 分解、f f t 等领域。然而,有关g p u 在计算智能应用领域内的 第1 页 国防科学技术大学研究生院硕十学何论文 _ - - w - - - 加速能力的实例1 i 多。文献【2 】基于非统一架构g p u 体系结构,通过o p e n g l 提供 的图像接口,将遗传算法映射至g p u 上运行。尽管在当时所得到的结果十分理想, 但是,在下面章节将看到,与在统一架构g p u 上所获得的加速比相比,其性能提 升是微乎其微的,并且其数据结果对改进统一架构g p u 体系结构缺乏指导性。 1 9 9 2 年,美国学者j a m e s 首次提出计算智能与人工智能的区别。他指出“计 算智能( c i ,c o m p u t a t i o n a li n t e l l i g e n c e ) 是依靠生产者提供的数字、数据材料进行 加工处理,且不依赖于知识,人工智能( a i ,a r t i f i c i a li n t e l l i g e n c e ) 则是需用知识 进行处理。1 9 9 4 年,j a m e s 在f l o r i d a , o r a n d o 9 4 i e e ew c c i 会议上再次阐述他的 观点,将智能由高至低分为三个层次:生物智能、人工智能、计算智能”【5 引。他 称,计算智能是一种智力方式的低层认知,它与人工智能的区别只是认知层次从 中层下降至低层而已。本文撇开对知识的处理,将人工智能与计算智能分开,仅 从计算智能的基本算法出发来研究g p u 体系结构的相关设计思想。 计算智能是以数据为基础,通过训练建立联系,进行问题求解。因其具有智 能性而广泛应用于v l s i 设计等工程应用各个方面。计算智能通常包括:人工神经 网络、遗传算法、模糊系统、进化程序设计、人工生命等。下面从计算智能的几 个研究方向分别介绍计算智能的相关理论。 ( 1 ) 模糊系统是计算智能应用领域中一个重要的研究内容。它基本上是依据 模糊逻辑、模糊规则、模糊推理、模糊控制等知识,基于神经网络算法、遗传算 法或是两者相互结合,对现实中的应用进行建模,从而解决一些实际问题。比如: 论文【l3 j 根据模糊集合理论,使用神经网络结构,提出一种基于模糊神经网络的模 式分类系统。【1 4 】融合遗传算法和神经网络的优点,提出一类智能控制方案。5 】使 用遗传算法来生成模糊控制器等。模糊系统的显著特点是能够直接地表示逻辑, 适于直接的或高级的知识,具有较强的逻辑功能,但它没有本质的获取知识的能 力,模糊规则的确定也比较困难,通常需要专家知识的指导。然而,神经网络则 能够通过学习或训练获得用数据表达的知识,除可以记忆已知的信息之外,神经 网络还具有较强的概括能力和联想记忆能力,神经网络的推理知识体现在网络连 接权值的修改过程中。在以前的研究中,多数是将模糊系统与神经网络作为相互 独立的分支,分别进行研究。现在基本上都将它们进行综合,利用各自的优势, 即将符号逻辑推理方法与联接机制方法进行结合,将数值方法与模糊逻辑方法进 行结合,其优势远远高于单项研究【7 2 】。因此随着对模糊系统和神经网络研究的深 入,两个领域间相互独立的关系逐渐改变【7 l j 。由此可见,遗传算法与神经网络算 法对于模糊系统的应用和发展起着至关重要的作用。 ( 2 ) 进化程序设计一般包括三个方面,分别为遗传算法、进化规划、进化策 略。这三个方面在算法实现方面具有一些细微的差别,但是具有一个共同点,即 第2 页 国防科学技术大学研究生院硕十学位论文 都是借助生物进化的思想和原理来解决实际问题,且具有智能性( 包括自组织、 自适应和自学习性等) 和本质并行性等特点【1 6 】。 ( 3 ) 人工生命是借助于计算机以及其他非生物体,实现一个系统,且这个系 统具有生物系统所具有的特征。人工生物系统的特征通常包括:通过数据结构在 可以判定的条件下进行复制的方法来繁殖;通过数据结构在可以判定的条件下进 行删除的方法来进行死亡操作;通过组合数据结构中的两个个体的特征而生成另 外的个体的方式来实现性匹配:通过模拟突变,以及通过设定对其繁殖能力与存 活能力的自然淘汰机制来实现进化,很明显这也就是生物进化论的思想i l 7 1 。 ( 4 ) 神经网络是指一个模拟神经系统的结构和功能,运用大量的处理部件, 由人工方式构造的网络系统。神经网络突破传统的、线性处理的数字电路计算机 的局限,是一个非线性动力学系统,并以分布式存储和并行协同处理为特色。虽 然单个神经元的结构和功能极其简单有限,但是大量的神经元构成的网络系统所 实现的行为却是极其丰富多彩的。 不同的应用程序通常具有不同的指令特征和内存访问特征,将来计算机体系 结构必将会随着应用的不同,组成部分和特点也不尽相同,g p u 体系结构同样也 应如此。计算智能是一种白适应处理问题的方法,因其具有一定的智能性,而广 泛用于工程各个方面,在布局布线中也经常使用。然而,有关计算智能领域内在 g p u 上的应用映射的实例比较有限。计算智能基本算法在g p u 体系结构上应用映 射程序具有什么样的指令特征和内存访问特征? 现代g p u 体系结构上需要做怎样 的改变才有利于程序的性能提升? 本文从回答这些问题出发,一方面提供在g p u 上映射计算智能领域内应用程序的相关资料,另一方面试图给出计算智能基本算 法的指令特征和内存访问特征,分析这些特征,为基于计算智能领域内的g p u 体 系结构的改进提出有用的建议和实验数据支持。 1 2 课题的研究内容 通过对一些文章的细读和研究,由上述叙述可以得知,遗传算法与神经网络 算法对于计算智能的应用和发展起着至关重要的作用。在相关领域内的应用中, 因具体问题的不同,遗传算法的染色体和基因的编码不尽相同,但在抽象出问题 的模型之后,其基本思想及解决方案是大致是致的,所做的遗传操作也大致相 同;在与神经网络算法相关的应用中,大量的神经元所构成的网络结构千变万化, 但神经元始终是其基本的组成。 在此篇论文中,将遗传算法和神经网络算法作为计算智能算法的代表,用典 型的二次规划为实例,在统一架构g p u 体系结构上分别对它们进行应用映射并对 它们进行性能加速,进而分析算法本身的不同参数对性能和精确度的影响。然后 第3 页 国防科学技术大学研究生院硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = ni = = = = = = = = = = = = = = = = = := = = = = = = = = = = = = = = = = = = = = = = = 利用g p u 模拟器,在各种虚拟的g p u 体系结构上进行模拟运行,以便得出计算 智能基本算法的性能瓶颈,详细阐述从g p u 的计算单元、c a c h e 、网络拓扑结构配 置、内存系统等各个方面的不同配置对程序性能的影响。讨论总结两个算法的指 令特征的内存访问特征,基于这些特征,对当前的g p u 体系结构作一定的改进, 从而提高计算智能领域的相关应用在g p u 上的运行速度,提出针对计算智能应用 领域的g p u 体系结构设计思想,从而得出一些结论,为基于计算智能c p u 体系 结构设计奠定实验基础。 1 3 论文的组织结构 第二章g p u 体系结构及存储层次,详细分析不同架构g p u 结构的不同,阐 述统一架构g p u 体系结构的组成和c u d a 编程模型。第三章简单介绍遗传算法的 基本思想,详细阐述了其并行模型及其在c u d a 平台下的实现过程,优化方法, 并用实例进行验证得出实验结果,展示遗传算法中不同参数设置对程序性能和准 确度的影响。第四章主要讲述神经网络算法的基本原理及其在c u d a 平台下的实 现过程,优化方法,以二次规划为例展示神经网络中神经元个数与性能的关系。 第五章基于计算智能基本算法的g p u 体系结构研究,并展示计算智能基本算法 在g p u 模拟器g p g p u s i m 中的模拟运行结果,展示不同配置对程序性能的影响, 提取应用程序指令特征,并对其进行分析,改进g p u 体系结构内存系统中地址映 射机制,并用对改进的g p u 体系结构加以验证。第六章结论,简要论述基于计算 智能应用的g p u 体系结构性能提升的方法,阐述g p g p u 模拟器的不足、本文的 不足、及以后的工作重心。 1 4 课题的研究成果 ( 1 ) 本篇论文为了实现遗传算法,提高遗传算法在g p u 上的运行效率,对 随机数的产生进行专门的研究,提出两种在g p u 上并行产生随机数的方法,通过 比较两种方法的效果和性能,将较好的方法应用于遗传算法中。 ( 2 ) 基于统一架构g p u 体系结构,充分利用其硬件资源,改进遗传算法的 并行实现的模型,借鉴求和、排序、扫描算法在g p u 上的优化途径,在c u d a 平 台下实现对遗传算法并行运行,且进行性能优化。 ( 3 ) 基于统一架构g p u 体系结构,充分利用其并行执行的特点,改进遗传 算法精确度优化策略,在尽量不影响性能的情况下,提高遗传算法的准确性,提 高其收敛至最优解的可能性。 ( 4 ) 在上述成功映射及优化遗传算法的性能和准确度的基础上,详细分析遗 第4 页 国防科学技术大学研究生院硕士学位论文 传算法的代数与种群大小对性能和准确度的影响。 ( 5 ) 以求二次规划问题为实例,成功映射神经网络b p 模型基于统一架构g p u 的并行实现,实现一定的性能加速,同时对其进行性能优化评测对比,并展示不 同数量的神经元与性能的关系。 ( 6 ) 针对计算智能基本算法的性能瓶颈,提出种具有针对性的地址映射机 制,并将计算智能程序在虚拟的g p u 体系结构上进行模拟验证,证实这种地址映 射机制是有助于神经网络算法的性能提升。 ( 7 ) 在上述的基础上,将计算智能的两个基本算法在不同的虚拟的g p u 体 系结构上运行,总结实现数据;并根据其运行结果,为针对计算智能应用的g p u 体系结构设计提出一些建设性的意见,为g p u 体系结构的发展奠定实验基础,对 将来的体系结构和软件的研究提供一些直接的有用的导向。 第5 页 国防科学技术大学研究生院硕十学位论文 第二章g p u 体系结构及存储层次 g p u 原本专门为处理图像而设计,但从2 0 0 6 年n v i d i a 发布统一架构的g p u 体系结构以来,就扩宽g p u 的原本用途,大量非图像领域内的并行计算由g p u 来承担,从而提高计算机系统的整体性能。此后对g p u 体系结构的研究就成为研 究热点,许多公司相继发布效率更高,结构更复杂的g p u 体系结构。尽管g p u 体系结构获得空前的成功,然而生产厂商为保护自己的知识产权,很少发布有关 g p u 体系结构的底层内部结构的细节信息,即使有,通常也是集中于终端对终端 的图形流水线,很少有关于着色处理器的微体系结构方面的信息,而且这些可利 用的信息大多数都是粗略和不明确的,一部分还是基于研究者的推测。在此,对 于g p u 体系结构的研究,本章根据有限的官方资料,从整体结构上,概述性地描 述g p u 体系结构。 2 1g p u 体系结构 目前,g p u 体系结构的架构大致可分三种:传统的基于图形处理的g p u 体系 结构,传统的显卡基本上都是基于这种架构,比如n v i d i a 的g e f o r e 3 7 系列;针 对通用计算的统一架构g p u 体系结构,其代表有n v i d i a 公司发布的g 8 0 与 g t 2 0 0 ;基于超长指令字的多核g p u 体系结构,a m d 公司推出的r v 7 7 0 就是基 于这种架构的多核g p u 体系结构。在r v 7 7 0 内部每个线程处理器都是具有5 个异 构核,以超长指令字的方式发射指令的标量处理单元,1 6 个线程处理器构成一个 s i m d 核,多个s i m d 核通过某种互联结构连接在一起共享统一存储空间。这样的 体系结构具有复杂硬件结构和控制设计,且还需功能更为强大的编译器和软件来 支持。因为r v 7 7 0 是以图形处理性能进行最优化处理为目标而设计的,与g t 2 0 0 相比而言,其控制部分更为紧凑且高效,但是其在通用程序处理效率上有所欠缺。 因此本章仅讨论传统基于图形处理的g p u 体系结构,并以n v i d i a 最近推出的 g t 2 0 0 为列来阐述统一架构的g p u 体系结构。 2 1 1针对图形处理的传统g p u 体系结构 传统g p u 体系结构利用o p e n g l d r e c t 3 d 等编程环境提供给用户的接口来进 行非图像领域内的计算和应用,一般方法和流程如图2 1 所示。 从图2 1 中的流水线可以看出,在使用这种方法进行映射时,应用程序首先调 用3 d 的应用接e l ,再通过a g p ( a g p :a d v a n c e dg r a p h i cp r o c e s s i n g 计算核心 逻辑与图形处理器之间的接口) ,将一些命令和数据传递给g p u 来处理。g p u 接 第6 页 国防科学技术大学研究生院硕士学f ) = 论文 到命令或是数据后,首先进行自订端处理,也就是将顶点数据标准化。每个场景模 型中的图像都有一定的方向和视角区域,在将目标正确地放置在某个场景中的某 个地方时,必须将目标进行标准化,或翻译,或旋转,以配合整个场景的视角。 一般标准化的方法是通过个组合的4 * 4 的视图模型矩阵与每个浮点顶点相乘, 从而得到一个四维的i x ,y ,z ,w 的视力空间的位置【2 4 l 。另外,还需将顶点的位置参数 进行格式化,即其转换成一些硬件可以理解的数据格式,并放至顶点c a c h e 中。其 次对顶点进行着色,即在每个顶点上产生光线和颜色。最简单的光照算法就是应 用程序为每个顶点计算且分发一个( r g b ) 的像素值。常用的典型的g p u 光照的 算法就是光线传送的物理平衡模型,其具有全面性、发射性、反射性、漫射性等 特点。最后进行三角设置。因为每个顶点的每个边都包含一些参数,这些参数还 要用来进行三角设置,通常都有4 个或是更多这样的参数。在设置中,决定每个 t r i a n g l e 中包含哪些像素,并为每个像素产生一些必要的信息:比如位置、颜色、 每个像素的纹理坐标、光栅的模式、位置取样( 是否在这个三角内) 等。接下来, 使用过滤技术,进行着色( s h a d i n g ) 处理,即为每个像素赋予颜色的值。一般情 况下,颜色的值由以下因素决定:着色的程序、纹理映射、反射等。 艟嬲缀,氛3 d 矧像成崩糕f 笛 斗枷 1 i r _ 二1 7 k 3 d 斑瘸镞磁( u :鳓o p e n g l 、d r e c t 3 d ) 篙爱g p u 淼处霓4 煳蚋溅 t r l 。 l | 1 j 鲻处矬f i j b j , c a c h e ) l i 纹f l 1 善 吲主a c h e t ,嫒j | 囊譬熊嚣7 :、:一: 1 l r j 1r 哆。颧 lj t 摹赢她,褥+ :ji ;愍 顶点队列 队粝:荫。“二 i 一g篪 列 , 4 k j r a s t e r i a z a t i o n 处璎敝列 进j :。r a s t e r i z a t i o n 艘处壤, 善 即避 于角设琵,收俄缚一 l l 个像豢爵,j 信息 帧缓冲- l 图2 11 f 统一架构下的g p u 体系结构 第7 页 国防科学技术大学研究生院硕十学位论文 在着色的程序中,怎么取得像素着色的颜色,就足过滤技术。常用的过滤技 术有双线性过滤、三角线性过滤、名向异向技术等。完成着色程序之后进行光栅 操作,这一步中主要是进行c r o p 、z r o p 等帧合并操作。c r o p ( c b u f f e rf r o m r a s t e ro p e r a t i o n ) 执行帧缓冲的混合,将着色和透明度结合在一起,修改c b u f f e r , z r o p ( z b u f f e rf r o mr a s t e ro p e r a t i o n ) 执行z 操作,即决定可见像素,放弃不可 见像素,并修改z b u f f e r 。f b ( f r a m eb u f f e r ) 帧缓冲是一个图形产品的最为昂贵 的组件,决定图像性能的首要因素。来自帧缓冲中的读和写请求都是通过f b i ( f r a m eb u f f e ri n t e r f a c e ) 帧缓冲接口来负责管理的【1 8 】【1 9 1 。 可以看出,非统一架构g p u 体系结构是专门针对于图像处理而使用的,它将 顶点着色处理和像素着色处理分开,并由不同的处理器来担任不同的任务,再将 其用流水线的方式组织实现,以便提高处理速度,尽管如此,非统一架构g p u 体 系结构在处理图像时还是会因各处理器任务分配不均而降低性能,特别是在处理 两种极端的图像时,即几何信息较少而像素信息很多或是像素信息很少而几何信 息特别复杂的图像,均会造成几何处理器负荷过重而像素处理器十分空闲或是像 素处理器任务繁重而几何处理器大量闲置的情况,从而浪费硬件资源。利用这种 架构进行通用领域内的计算,必须通过一些软件提供的图像接口来进行,在应用 映射时十分不便,而且步骤繁琐。除此之外,在访问g p u 的内存系统时,只能聚 集,不能分散即计算单元可以从不同的存储单元读取数据,但是在对存储单元进 行写时,计算单元与存储单元要一一对应,不能一个处理单元一次将同一数据写 入多个存储单元。综上所述,这种体系结构一方面使得编程灵活性受到很大影响, 另一方面使得数据传输能力迅速下降因此影响处理器运行速度【1 9 1 。 2 1 2 统一架构下的g p u 体系结构 为了解决上述不便,充分利用处理器资源,2 0 0 6 年,n v i d i a 公司j 下式发布统 一架构g p u 体系结构g 8 0 及c u d a ( c o m p u t eu n i f i e dd e v i c ea r c h i t e c t u r e ) 编程 环境,2 0 0 8 年7 月,n v i d i a 公司在g 8 0 架构的基础上进行改进,推出g t 2 0 0 , 如图2 2 所示。在图2 2 所示的架构下,主机通过a g p 接口将应用程序的指令和 数据传送至g p u 。g p u 接收至这些命令后,按照程序的配置,由线程执行管理器 决定分派线程至哪个t p c 执行。在图像处理过程中,t p c 不但可以进行几何处理, 而且还能处理像素信息,有效地解决非统一架构的几何处理器与像素处理器任务 分配不均的状况,因此提高g p u 处理效率。t p c 之间若需要通信或是碰到访存指 令,则通过互联网络,访问相应g d d r 内存,读取数据。在单个t p c ( t e x t u r e p r o c e s s o rc l u t e r ) 内部,有两个s m ( s t r e a mm u l t i p r o c e s s o r ) 处理器。它们共用一个 常量c a c h e 、一个纹理c a c h e 和一个访存单元。每个s m 是一个简单的s i m d 处理 第8 页 国防科学技术大学研究生院硕士学位论文 器结构,其中只有一个取指单元,有8 个s p ( s t r e a m i n gp r o c e s s o r ) 、西个s f u ( s u p e r f u n c t i o nu n i t ) 和一定大小的共享内存,如图2 3 所示。互联网络主要是在t p c 和 内存控制器模块之间的信息传递提供中继,并提供一些接口,从而方便t p c 之间、 t p c 与g d d r 之间进行通信。内存系统包括内存控制器和g d d r 2 0 j 芯片。 并行计算机的体系结构中对处理机的组织方式通常分两种,种多计算机组织 方式,这种方式下,每个处理器都连接至自己的本地存储器,处理器之间通过互 联网络传递消息来完成通信;另种并行计算机组织方

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论