(计算机系统结构专业论文)异构多核处理器的任务调度分配问题及算法研究.pdf_第1页
(计算机系统结构专业论文)异构多核处理器的任务调度分配问题及算法研究.pdf_第2页
(计算机系统结构专业论文)异构多核处理器的任务调度分配问题及算法研究.pdf_第3页
(计算机系统结构专业论文)异构多核处理器的任务调度分配问题及算法研究.pdf_第4页
(计算机系统结构专业论文)异构多核处理器的任务调度分配问题及算法研究.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

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

文档简介

r e s e a r c ho nah e t e r o g e n e o u sm u l t i c o r e p r o c e s s o r c a n d i d a t e : s u p e r v i s o r : a c a d e m i cd e g r e ea p p l i e df o r : s p e c i a l i t y : d o n g z h e n p r o f y a on i a n m i n m a s t e ro fe n g i n e e r i n g c o m p u t e ra r c h i t e c t u r e d a t eo fs u b m i s s i o n :j a n u a r y , 2 010 d a t eo fo r a le x a m i n a t i o n :m a r c h ,2 010 u n i v e r s i t y :h a r b i ne n g i n e e r i n gu n i v e r s i t y 季 - j , j a 哈尔滨工程大学 学位论文原创性声明 本人郑重声明:本论文的所有工作,是在导师的指导下,由 作者本人独立完成的。有关观点、方法、数据和文献的引用己在 文中指出,并与参考文献相对应。除文中已注明引用的内容外, 本论文不包含任何其他个人或集体已经公开发表的作品成果。对 本文的研究做出重要贡献的个人和集体,均已在文中以明确方式 标明。本人完全意识到本声明的法律结果由本人承担。 作者( 签字) :雠 日期:加,p 年弓月盯日 哈尔滨工程大学 学位论文授权使用声明 本人完全了解学校保护知识产权的有关规定,即研究生在校 攻读学位期间论文工作的知识产权属于哈尔滨工程大学。哈尔滨 工程大学有权保留并向国家有关部门或机构送交论文的复印件。 本人允许哈尔滨工程大学将论文的部分或全部内容编入有关数据 库进行检索,可采用影印、缩印或扫描等复制手段保存和汇编本 学位论文,可以公布论文的全部内容。同时本人保证毕业后结合 学位论文研究课题再撰写的论文一律注明作者第一署名单位为哈 尔滨工程大学。涉密学位论文待解密后适用本声明。 本论文( 口在授予学位后即可酎在授予学位1 2 个月后口 解密后) 由哈尔滨工程大学送交有关部门进行保存、汇编等。 作者( 签字) :吗弘务 日期: 砷加年乡月心日 导师( 签字) :挑忿氏 d 年月步日 哈尔滨t 程大学硕十学伊论文 i i i i i i i 宣i i i i i i i i i i i i i i i f ri d i t 宣葺置i i 萱i 萱i i i i i 宣i 葺i 嗣 摘要 在集成电路工艺技术发展的驱动下,异构多核处理器的性能在成倍的增 加,但原来系统级的一些问题被引入到处理器内部,任务的调度分配就是问 题之一。对于多核c p u ,优化操作系统任务调度算法是保证效率的关键。多 核处理器包括异构多核处理器和同构多核处理器。相对于同构多核处理器, 异构多核处理器的性能问题会更加凸显,它的任务调度分配会更加复杂。多 核处理器的任务分配问题的研究还未成熟,不同的学者也在通过不同的途径 进行研究。本文对异构多核处理器的任务调度算法进行了研究与改进,并与 静态的任务分配算法和轮转法进行了比较。 本文的算法主要分两个步骤:一、先根据线程间的通信频繁程度对线程 进行分配;二、根据先分配的线程的执行情况来决定与其有相似指令比例的 线程的分配。将任务分配到处理器核上会出现两种类型的开销:执行任务的 开销以及处理器核间的通信开销。本文算法的第一步就是为了解决处理器核 间的通信开销,因为同一进程的线程间共享同一地址空间,不同进程间的线 程的地址空间是相互独立的。对于异构多核处理器来说,核间的通信通常采 用信箱通信机制,如果能让通信频繁的线程尽量分配到同一处理器核,这就 可以降低通信的开销。本文第二步是为了更好的提高核的利用率。 本文使用m 5 全系统仿真器,对本文改进的算法和轮转法、静态的任务 调度算法进行了测试。本文的异构核结构是5 a l p h a 2 11 6 4 和3 a l p h a 2 1 2 6 4 , 使用了s p e c 2 0 0 0 基准测试套件它们中有5 个是整型( g c c ,g z i p ,b z i p 2 ,p a r s e r , c r a f t y ) ,7 个是浮点( e q u a k e ,g a l g e l ,l u c a s ,w u p w i s e ,m 鲥d ,s w i m ,r o m p ) 。 本文的性能评估指标是用整个程序的指令数量与其执行时间的比。通过测试, 本文的算法比轮转法的性能提高了3 4 。 关键词:多核处理器;任务调度分配;异构多核处理器;m 5 ;c m p 哈尔滨t 稗大学硕+ 学伊论文 a b s t r a c t w i t ht h ei c p r o c e s st e c h n o l o g yd e v e l o p m e n t ,t h ep e r f o r m a n c e o f h e t e r o g e n e o u sm u l t i - c o r ep r o c e s s o r sw i l lb em u l t i p l i e d i ti sc l e a rt h a tt h eo r i g i n a l s y s t e m l e v e lp r o b l e m sw i l lb ei n t r o d u c e dt ot h ep r o c e s s o ri n s i d e ,f o re x a m p l et a s k s c h e d u l i n ga s s i g n m e n t f o rt h e m u l t i - c o r ep r o c e s s o r ,o p t i m i z et h eo p e r a t i n g s y s t e mt a s ks c h e d u l i n ga l g o r i t h mi sk e yt oe n s u r ee f f i c i e n c yo ft h em u l t i c o r e p r o c e s s o r m u l t i - c o r ep r o c e s s o r s ,i n c l u d i n gh e t e r o g e n e o u sm u l t i c o r ep r o c e s s o r a n dh o m o g e n e o u sm u l t i - c o r ep r o c e s s o r ,c o m p a r e dt oh o m o g e n e o u sm u l t i - c o r e p r o c e s s o r ,t h ep e r f o r m a n c eo fh e t e r o g e n e o u s w i l lb em o r ep r o m i n e n t ,t a s k s c h e d u l i n gt h em l o c a t i o no fh e t e r o g e n e o u sm u l t i c o r ep r o c e s s o rw i l lb em o r e c o m p l e x t h et a s ks c h e d u l i n gm l o c a t i o np r o b l e mo fm u l t i - c o r ep r o c e s s o r sh a sn o t y e tm a t u r ei nt h i sf i e l d ,s or e s e a r c h e r sh a ss t u d i e db yd i f f e r e n tw a y i nt h i sp a p e r , h e t e r o g e n e o u sm u l t i c o r ep r o c e s s o r s ,t h ea l g o r i t h m so ft a s ks c h e d u l i n gh a v eb e e n s t u d i e da n di m p r o v e d ,a n dc o m p a r ei tw i t has t a t i ct a s ka l l o c a t i o na l g o r i t h ma n d r o u n d r o b i nm e t h o d t h i sa l g o r i t h mm a i n l yc o n s i s t so ft w os t e p s :f i r s t ,a c c o r d i n gt ot h ef r e q u e n c y o fc o m m u n i c a t i o nb e t w e e nt h r e a d st om l o c a t i o n s e c o n d ,a c c o r d i n gt ot h er u n t i m e b e h a v i o rt od e c i d et h ea l l o c a t i o no ft h eo t h e rt h r e a d st h a th a v ec o n t a i n i n gs i m i l a r p r o p o r t i o n so fi n s t r u c t i o nt y p e a tp r e s e n t ,a s s i g n e dt h et a s k t op r o c e s s o rw i l l a p p e a ro nt w ot y p e so v e r h e a d :t h eo v e r h e a do ft h ei m p l e m e n t a t i o no ft a s k s ,a s w e l la st h ec o m m u n i c a t i o no v e r h e a db e t w e e nt h ep r o c e s s o r t h ef i r s ts t e pi nt h i s a l g o r i t h mi sab e r e rs o l u t i o nf o rt h ec o m m u n i c a t i o n o v e r h e a do fi n t e r - p r o c e s s o r b e c a u s et h es a m ep r o c e s s o rs h a r et h es a m ea d d r e s ss p a c eb e t w e e nt h r e a d s ,b u t a d d r e s ss p a c eo ft h r e a db e t w e e nt h ed i f f e r e n tp r o c e s s e si si n d e p e n d e n te a c ho t h e r f o rt h eh e t e r o g e n e o u sm u l t i c o r ep r o c e s s o r s ,t h ec o m m u n i c a t i o no ft h ep r o c e s s o r c o r e sb yt h em a i l b o x ,i fw ea s s i g n e dt h et h r e a d so ff r e q u e n tc o m m u n i c a t i o nt o 气v o , 哈尔滨t 程大学硕十学位论文 t h es a m ep r o c e s s o rc o r ea sf a ra sp o s s i b l e ,s oi tc a l lr e d u c et h ec o m m u n i c a t i o n o v e r h e a d t h es e c o n ds t e p ,i m p r o v et h eu t i l i z a t i o no fp r o c e s s o r s i nt h i sp a p e r ,o u re x p e r i m e n t a t i o ni su s i n gt h em 5s i m u l a t o rs y s t e mt ot e s t t h ea l g o r i t h ma n dr o t a t i o nm e t h o d ,t h es t a t i ct a s ks c h e d u l i n ga l g o r i t h m t h i s s t r u c t u r eo ft h eh e t e r o g e n e o u sm u l t i c o r ep r o c e s s o r si s5 a l p h a 2116 4a n d3a l p h a 21 - 2 6 4 ,u s i n gt h es p e c 2 0 0 0b e n c h m a r ks u i t eh a v ef i v ei n t e g e r ( g c c ,g z i p , b z i p 2 ,p a r s e r ,c r a f t y ) ,s e v e nf l o a t i n g p o i n t ( e q u a k e ,g a l g e l ,l u c a s ,w u p w i s e , m g r i d ,s w i m ,m m p ) w eu s et h en u m b e ro fi n s t r u c t i o n sb yd i v i d i n gt h ew h o l e e x e c u t i o nt i m e f r o mt h et e s t ,w ec a ns e et h i sa l g o r i t h mp e r f o r m a n c et h a nt h e r o u n d - r o b i ni n c r e a s eb y3 4 k e yw o r d s :m u l t i c o r ep r o c e s s o r s ;t a s ks c h e d u l i n ga l l o c a t i o n ;h e t e r o g e n e o u s m u l t i c o r ep r o c e s s o r s ;m 5 ;c m p 卜 哈尔滨丁程大学硕十学位论文 目录 第1 章绪论1 1 1 课题来源l 1 2 研究意义及现状2 1 3 本文的主要内容及组织结构5 第2 章相关背景及技术简介7 2 1 多核体系结构7 2 1 1 多核处理器的分类8 2 1 2 典型的异构多核处理器的体系结构9 2 1 3 异构多核处理器的现状及发展趋势ll 2 2 多核体系架构的操作系统1 3 2 2 1 多核体系架构的操作系统模式1 3 2 2 2 主从式处理机的操作系统。1 5 2 2 3 典型的支持多核的操作系统1 6 2 3 本章小结17 第3 章多核处理器任务调度算法讨论及线程的划分1 8 3 1 现有的多核处理器的任务调度算法1 8 3 1 1 多核处理器任务调度的静态算法1 8 3 1 2 多核处理器任务调度的动态算法1 9 3 1 3 两种算法的比较总结2 0 3 2 多核处理器的线程的划分2 1 3 2 1 多核处理器线程划分方法的特点及现状一2 1 3 2 2 多核处理器线程划分方法的技术支持一2 2 3 2 3 多核处理器线程划分算法分析2 3 3 3 本章小结2 5 第4 章异构多核处理器的任务调度分配算法实现2 6 哈尔滨t 程大学硕十学位论文 4 1 异构多核处理器任务调度算法问题描述2 6 4 2 异构多核处理器任务调度分配算法实现2 7 4 2 1 任务分配算法基本思想2 7 4 2 2 任务分配模型2 7 4 2 3 迭代任务分配算法3 0 4 2 4 线程到核的调度分配方法3 2 4 2 5 线程的调度分配策略3 4 4 3 任务调度分配算法框架。3 5 4 4 本章小结3 6 第5 章测试结果及分析3 7 5 1 实验平台及工具3 7 5 1 1m 5 全系统仿真器简介3 7 5 1 2m 5 架构3 8 5 2 测试结果:4 0 5 3 分析算法改进后的优势4 7 5 4 本章小结4 8 结论4 9 参考文献5 0 攻读硕士学位期间发表的论文和取得的科研成果5 5 致谢5 6 哈尔滨t 稗大学硕+ 学伊论文 1 1 课题来源 第1 章绪论 多核处理器的发展对传统的编译技术提出了挑战。目前大多数应用程序 都是基于串行模式编写的,如果直接运行在多核处理器上,不能发挥多核处 理器的高并行处理能力。为了适应多核处理器,传统的并行编译技术被引入。 在并行编译中为了充分利用多核处理器资源,运行并行程序需要面临许多问 题,其中任务调度问题就是目前研究的热点问题之一。任务调度将通过程序 划分后的子任务调度分配到合适的核上执行,使程序的整体执行时间最短。 任务调度的好坏直接影响系统的性能,如果调度不当,很可能将并行的优点 完全抹煞掉,甚至比串行的效果还要差。 在集成电路工艺技术发展的驱动下,异构多核处理器的性能在成倍的增 加,原来系统级的一些问题引入了处理器内部,如任务的调度分配。因为对 于多核c p u ,优化操作系统任务调度算法是保证效率的关键。计算性能的提 高将更多地依赖于处理器核数量的增加。为了充分地利用这些数量庞大的处 理器核,使其利用率提高,应用程序的进程线程个数也将比过去多很多, 必须改进线程到核的分配技术,这种技术能够在保持公平性和优化整体吞吐 量情况下,使资源可用性与线程对资源的需求很好地匹配;同时,多核处理 器也使得并行系统的层次结构变得更为复杂。这些变化将给传统的进程线 程的分配和调度带来挑战。 综上所述,多核处理器任务分配问题的研究还未成熟,而不同的学者也 在通过不同的途径进行研究,通常情况下都是将复杂问题简化为在一定的条 件下利用现有的方法进行改进。 哈尔滨丁稃大学硕十学何论文 1 2 研究意义及现状 在过去三十多年的发展过程中,微处理器的性能借助集成电路技术和体 系结构的进步获得了飞速提升。伴随着性能的提高,计算机在各个领域的应 用获得了巨大成功,产生了良好的经济效益和社会效益。随着工艺技术水平 的进一步发展和应用需求的不断变化,微处理器体系结构的发展正面临新的 挑战和创新机遇:根据半导体工业协会s i a ( s e m i c o n d u c t o ri n d u s t r ya s s o c i a t e i o n ) 的预测,摩尔定律在2 0 1 5 年前依然有效【l 】。s t i 联盟( s o n yt o s h i b aa n d i b m ) 最新发布的c e l l 处理器主频达到4 6 g h z ,集成有近3 亿晶体管【2 】。 当前,集成电路工艺仍在快速发展,4 5 n m 工艺即将投入使用p j 。据2 0 0 5 年 国际半导体技术路线图i t r s ( i n t e m a t i o n a lt e c h n o l o g yr o a d m a pf o r s e m i c o n d u c t o r s ) 的预测,单个硅芯片上目前已经可以集成1 0 亿个晶体管【4 】, 如图1 1 所示【7 1 。工艺进步带来晶体管性能提升的同时,也使延时和功耗等 问题【7 】日益突出,延时问题直接导致了c p u 时钟频率的增长速度与单芯片晶 体管容量增长速度之间差距的增大,如图1 2 所示【5 】。如何有效利用芯片上 丰富的晶体管资源,并解决c p u 时钟频率和晶体管容量之间的不匹配问题, 仍是微处理器体系结构研究面临的一个巨大挑战。【5 】【6 】 图1 1 集成电路工艺发展趋势 哈尔滨t 稃大学硕十学位论文 5b 1 0 g z l 3 l 3g 珏z 1 0 0 0 0 lx 咀z 图1 2 晶体管数目增长速度与c p u 时钟频率增长速度之间的差距 对于多核处理器的日益需求超过了对单核处理裂7 1 。一方面,过去人们使 用各种方法来提高单核处理器的时钟频率从而来提高处理器的性能,但现在人 们发现已经没有更好的方法能让处理器的时钟频率显著的增加了。另一方面由 、于指令的速率不能满足高性能核的速率而导致了处理器核被闲置,导致了资源 浪费,从而降低了处理器的性能。随着半导体工艺技术的迅速发展,使在单一 芯片上集成更多的硬件模块成为可能。那么,如何有效的利用芯片上丰富的晶 体管资源,在更少的时间内设计开发出复杂的硬件系统,从而提高处理器的性 能,多核处理器的出现解决了这些问题。 多核处理器包括同构多核处理器和异构多核处理器。同构多核处理器是 在同一个芯片上的处理器核都是相同的。异构多核处理器是在单芯片上的核 是不同的,基本构建模块是可配置、可扩展的微处理器核。例如:c a c h e 的大 小,核的类型( 顺序的或者是乱序的【8 】) ,时钟频率,指令宽带等等,即把 多个具有不同功能或者不同结构的微处理器核,以一种有效的方式集成在同 一个芯片中。异构多核处理器与同构多核处理器【1 相比,对于芯片面积的利 用、应用程序的并行、减少散热、降低功耗以及性能等方面,异构多核处理 器是更好的选择。 3 哈尔滨t 稃大学硕+ 学伊论文 虽然多核处理器可以通过提高集成度带来诸多好处,例如让芯片的性能 成倍地增加,特别是异构多核处理器,但与此同时也出现了一些影响处理器 性能的技术问题,任务调度问题就是当前研究的问题之一。为了充分地利用 这些数量庞大的处理器核,必须充分发挥任务调度分配技术,这样能够在保 持公平性和优化整体吞吐量情况下,使资源的可用性与线程对资源的需求很 好地匹配;由于多核处理器使并行系统的层次结构变得更为复杂,并行度的 提高也一定会增加处理器的工作负载。 对于良好的任务调度算法来说,负载均衡也是调度策略要考虑的关键问 题之一。对于多核处理器的负载调节,人们提出了很多的方法。例如,为每 个处理器核提供单独的队列,在这种情况下,具有空队列的处理器核就会空 闲,相反另一个处理器核就会很繁忙。为了解决这种情况,可以考虑共同就 绪队列,所有处理器共用一个就绪队列。但这无疑对进程上下文切换、锁的 转换增加了执行时间,降低了处理器的性能。另外一种想法是选择一个处理 器核为其它的处理器核调度,因而创建了主从结构。有的系统将主从结构作 了进一步的扩展,采用单一处理器核来处理所有的调度策略、i o 处理和其他 系统活动,只有一个处理器核处理访问系统数据,减轻了数据共享需要,然 而它的执行效率并不高,i o 的执行和处理系统事务的主处理器成为瓶颈。 到目前为止,世界上对于c m p 体系结构操作系统的任务调度算法的研究 还不成熟。虽然w i n d o w s 与l i n u x 操作系统可以作为c m p 多核体系结构的操作 系统,但是它们对多核的支持并不是直接对c m p 多核体系结构的支持,实际 上都是针对s m p ( 单芯片多处理器) 体系的支持。很多的调度算法是基于同 构多核处理器,但是我们知道在多道程序计算环境下,执行线程会展现出不 同的运行特性和硬件资源需求。不仅不同线程会有不同的特性,而且每个线 程随着时间的推移,它的性能和资源的使用也会展现出多样性。 在 3 1 】中可以了解到,目前根据华盛顿大学通过对两个同构c m p 架构和 三个异构的c m p 架构分别用静态的分配策略和动态的分配策略作比较,异构 c m p s 与同构的c m p s 相比动态的任务分配策略要比静态的分配策略好。动态 4 哈尔滨t 稃大学硕十学何论文 的分配策略能更好的适应不同并行度的线程,而且可以减少总的执行时间, 对资源的利用率也有所提高等等。研究员对以下问题做出了研究:1 核的数 量和程序的规模。2 i p c 事前是不知道的。3 i p c 不是常数而是在随着时间的 推移程序的执行在改变。4 线程迁移的开销。但是此项研究的前提是在一个 简化的情况下,在与动态策略比较时,研究人员假设事先知道每个线程在每 个核中运行中的工作情况。可是,我们知道在每个核运行之前是不知道什么 样的线程在什么样的核里运行时对性能的影响。同时,在异构和同构对动态 策略进行比较时,研究人员采用的是动态追踪策略,就是在运行时用有代表 性的程序做测试来判断程序在各个核的执行情况,我们如果输入的程序与测 试程序是完全不同的时候,那么这个策略就会失效。所以这些问题都是值得 我们考虑的。 1 3 本文的主要内容及组织结构 本文主要针对异构多核处理器的任务调度分配问题所带来的开销进行算 法改进设计,这两类开销是处理器上执行任务的开销以及处理器问的通信开 销。同时介绍了启发式算法和线程到核的分配策略,通过他们的优势和不足, 对其算法进行讨论并改进,来提高异构多核处理器的性能。 本文共分五章,分别介绍了异构多核体系结构和操作系统对多核处理器 的支持的基础理论,以及当前的研究现状及相关技术。然后重点介绍了本文 所涉及和实现的算法。 第一章阐述了课题的来源、研究的意义及现状和本文的组织结构。 第二章介绍了课题的相关背景和目前的技术发展状况。 第三章对现有的多核处理器任务调度算法进行讨论和线程划分技术的 介绍。 第四章首先介绍了启发式的任务调度算法和线程到核的分配策略,然后 将这两个算法进行结合并改进,最终形成了一个有效地平衡调度 时带来的开销,加快了异构多核处理器执行效率。 哈尔滨t 程大学硕+ 学位论文 第五章对本文提出的任务调度分配方案进行试验证实,能够提高异构 多核处理器的性能。 结论:对本文的工作进行了总结,并对下一步将要进行的研究方向提出 了一些自己的看法。 6 哈尔滨t 程大学硕十学位论文 第2 章相关背景及技术简介 2 1 多核体系结构 一直以来为了不断提高处理器的性能,处理器芯片厂商在不断地提高主 频,希望可以给他们带来更好的性能。但随着芯片制造工艺的不断进步,从 体系结构来看,传统处理器体系结构技术已经面临瓶颈问题,晶体管集成度 已超过上亿个,很难再通过提高主频来提升性能,而且主频提高,功耗也相 对提高,这也是直接促使单核转向多核的深层次原因;从应用需求来看,日 益复杂的多媒体,科学计算、虚拟化等多个应用领域都呼唤更为强大的计算 能力。在这样的背景下,各主流处理器厂商纷纷将生产产品战略从提高芯片 的时钟频率转向多线程、多内核等。 如s m t 技术,又称为超线程技术【8 】,在一个处理器核上实现了硬件并行 执行的能力,但由于不断增加的芯片面积使得生产的成本提高,而且技术上 带来的问题也越来越复杂,使设计和验证其性能花费的时间也变得更耗时。 然而对称多处理器s m p 的体系结构通过在一个计算机上汇集多个处理器,各 个处理器之间共享内存子系统以及i o 子系统,在一定程度上提升了计算机 系统的并行性及计算能力。但用这种方式,需要把通用处理器构建成集群, 而这种技术难度非常大。一种称为c m p 【9 】【10 1 ( c h i pm u l t i p r o c e s s o r s ,单 芯片多处理器) 【1 1 】技术为处理器性能的继续提升提供了种方式。c m p 就 是将多个计算内核集成在一个处理器芯片中,从而提高处理器的计算能力, c m p 技术又称为多核技术。从实质上讲,芯片上的每一个微处理器都是一个 相对简单、功能独立的单线程的处理器,但是这些微处理器之间联系较为紧 密,共享l 2 c a c h e 或者是共享l l c a c h e ,并且有的还共享f s b 总线接口。从 单芯片多核处理器的设计思路上可以看到,它不但拥有硬件多线程处理能力 ( s m t ) ,而且在设计上同s m p 有很多的相似之处。 7 哈尔滨t 稃大学硕十学何论文 2 1 1 多核处理器的分类 目前多核处理器按结构不同可以分为同构多核处理器和异构多核处理器 两种【1 】【1 2 】【13 1 ,它们的判断标准是芯片上集成多个处理器核的结构是否相同。 同构多核处理器大多数是由通用处理器组成,所有处理器核的体系结构是相 同的,多个处理器核执行相同或者类似的任务。同构多核处理器往往针对特 征单一的应用。如果要提高多个处理器核的利用率,即多个处理器核运行多 个线程,这需要更好的挖掘线程的并行性【1 2 1 。异构多核处理器包含多个不同 体系结构的处理器核,除了通用处理器核心之外,大多集成了具有某些针对 特定应用设计的处理核心,如d s p ,a s i c 、多媒体处理器等等。对于异构多 核处理器来说,它可将不同类型的计算任务分配到不同类型的处理器核上并 行处理,这样对于有不同需求的应用,可以提供比较灵活、高效的处理机制。 1 同构多核处理器 i n t e l 目前最新的架构是c o r e 微架构,所有j i l t e l 生产的x 8 6 架构的新处 理器,无论面向台式机、笔记本和服务器,都将统一到c o r e 微架构。这是一 个高效的双核心架构,支持3 6 b 的物理寻址和4 8 b 的虚拟内存寻址,采用共 享式二级缓存设计,两个内核共享4 m b 的二级缓存【l4 1 。每个内核都采用乱 序执行,加入对e m 6 4 t 与s s e 4 指令集的支持,具有1 4 级有效流水线,内 有3 2 k b 一级指令缓存与3 2 k b 一级数据缓存,而且两个核心的一级数据缓 存之间可以直接传输数据;具有4 组指令解码单元,支持微指令融合与宏指 令融合技术,每个时钟周期最多可以解码5 条x 8 6 指令,生成7 条微指令, 并拥有改进的分支预测功能;拥有三个调度端口,内有5 个执行单元,包括 3 个6 4 b 的整数执行单元、两个1 2 8 b 的浮点执行单元和3 个1 2 8 b 的s s e 执 行单元;采用新的内存相关性预测技术,支持增强的电源管理功能,支持硬 件虚拟化技术和硬件防病毒功能。芯片内建数字温度传感器,可提供功率报 告和温度报告等,配合系统实现动态的功耗控制和散热控制。 哈尔滨t 程大学硕十学位论文 在x 8 6 微处理器领域,a m d 在2 0 0 5 年4 月推出双核处理器o p t e r o n ,专 用于服务器和工作站。o p e r o n 引入h y p e r t r a n s p o r t 超传输技术来消除传统的 前端总线瓶颈,降低了内存的访问延迟。紧接着a m d 又推出了a t h l o n6 4x 2 双核系统产品用于p c 领域。英特尔在a m d 之后也推出了双核至强( x e o n ) 以及双核p e n t i u md 。在2 0 0 6 年5 月,英特尔也发布了用于服务器的双核处 理器d e m p s e y ,6 月份又推出升级版的双核芯w o o d c r e s t 。 i n t e lx e o n c l o v e a o w n 四核芯片也已经上市,随后的i n t e lx e o nt i g e r t o n 、a m d b a r c e l o n a ,i n t e ld u n n i n g t o n 等众多四核、八核服务器c p u 也都在2 0 0 7 年登 场亮相了。可以看到,同构多核处理器在p c 以及服务器上的得到了广泛的 应用。此外,异构多核处理器也已经开始进入成熟的应用。 2 1 2 典型的异构多核处理器的体系结构 1 t i 的o m a p 多媒体处理器 2 0 0 3 年,美国德州仪器公司( t e x a si n s t r u m e n t s ) 发布了一款新的嵌入 式多媒体处理器及开发平台o m a p t l 5 】,其目的是满足下一代嵌入式设备的 需求,主要用于2 5 g 和3 g 无线手持设备、p d a 和其它多媒体设备。其体系 结构框架如图2 1 所示。 o m a p 是一个异构双核微处理器,从图2 1 【1 5 】看出它主要由a r m 9 2 6 处 理器核和t it m s3 2 0 c 5 5 x 系列的d s p 处理器核组成。在a r m 核有一个1 6 k b 的i c a c h e 和一个8 k b 的d c a c h e 。c 5 5 xd s p 核的作用是处理所有与数字信号 处理相关的任务,d s p 核如何访问外部存储器要由a i 蝴微处理器核和d s p 核中的m m u 来决定控,它中包含4 8 k w 的s a r a m ,3 2 k bd r a r m ,2 4 k b 的i c a c h e 。o m a p 有一个9 通道d m a 控制器,这个d m a 控制器的性能很高。 在不需要a r m 核的干涉的情况下,它使芯片和不同的外围部件间进行高效的 数据传输。 9 哈尔滨t 稗大学硕十学何论文 夕e 7 o b 墨恐腰包磷 h强删 蚴 t r a 自欧c o n 钧n 野 啪翘“ 。 翁 7 多 d s p x q d t 1 9 2 5 气7。 笔ic 5 5 x 八 s v s t , 衄n 、, p e n p l 蔓r a lb u s d 琳 鲫贼弧 z 1 、算f b x ( ,1 7 ,飞7 p m p h e n l s :l c dc 锄打0 1 1 姬h t e m vh 嫩 t 盟哦g p l 0 i 越罾园s p i ? 蛔蚓溉3 l d s p : c 5 c 德e h t m t a l 、i 鲤b o 挥 鹳释s 越强m 3 弧d a z m l 瓯w 陇 m :稻1 c a e k g r a p h :蕊a c c d m t m 强mp o r th t e r h e 图2 1t io m a p 处理器体系结构框架 2 c e l l 处理器 c e l l 1 3 】【1 6 】处理器是由s t i 联盟( s o n yt o s h i b aa n di b m ) 共同开发的一款 超高性能异构多核处理器,主频高达4 6 g h z ,运算性能峰值为2 5 6 g f l o p s 。 它的结构如图2 2 所示【”】,它包括一个通用的p o w e r p c 处理器核p p e ( p o w e r p cp r o c e s s i n ge l e m e n t ) 和8 个协同处理器( s y n e r g i s t i cp r o c e s s o r e l e m e n t ,简称s p e ) 。s p e 是c e l l 中的协同处理核,负责执行多媒体运算、 3 d 绘图、科学计算等应用。 从图2 2 中可以看出它由8 个s p e 处理器核和一个p p e ,即8 个协作处理单 元这8 个处理器核具有相同的结构,都是s i m d 结构的向量处理器,且都有自 己的本地存储器。它们都可以作为一个独立的处理器使用。 1 0 哈尔滨t 稗大学硕十学伊论文 i ii ii i r m 口n 。- 卜 c o “眺 一一 图2 2c e l l 处理器体系结构框架 在2 2 图,e i b ( e l e m e n ti n t e r c o n n e c tb u s ,e i b ) 是元间互连总线,它负 责对这8 个s p e 且o s p e 0 、s p e 7 和p p e 之间的通剧1 6 和数据传输,e i b 有 4 个带有6 4 位标志的1 6 位的数据环。每个周期可以传送9 6 个字节,而且可以处 理1 0 0 个以上的独立的请求。s p e 彼此之间也可以通过它进行通信和数据传 输。p p e 内部主要是一个6 4 位的p o w e r 处理核( p o w e rp r o c e s s o ru n i t ,p p u ) p p u 是个双发射、双线程、按序执行的运算核心,可以同时提取4 条指令和 2 个结果。b i c 也可以提供通信功能,它提供s p e 与系统中的其他部件进行通 信的功能,而且也提供不同c e l l 处理器间的通信。 2 1 3 异构多核处理器的现状及发展趋势 目前异构多核处理器体系结构主要向这两个目标发展,第一个目标是根 据需求进行的自动化构建流程,第二个是面向某一特定领域专用设计【l2 1 。体 系结构设计师们已经注意到同构多核处理器体系结构越来越不能满足人们对 高效性能的渴望。同时,异构多核处理器体系结构的设计,需要考虑在不同 体系结构的处理器核之间进行任务的映射以及任务间的通信,如何构建高效 哈尔滨t 程大学硕十学何论文 的异构多核处理器设计开发平台,进行有效的软硬件任务划分,这都是当前 该领域的重要研究内容。 异构多核处理器片上通信架构的设计也是异构多核处理器研究的重要内 容之一。目前多核处理器片上通信主要有两种方式:一是基于共享存储媒介 方式;二是,基于片上互连结构的通信方式;当处理器核数量不多时( 同构 多核处理器) ,最简单有效的互连方式为基于共享存储器的总线互连;当处 理器核个数越来越多时( 异构多核处理器) ,不同结构的处理器核存储层次 也不同,如果一定要让不同的核共享同一个c a c h e 的话,系统的性能会大大 的降低,所以为了提高处理器核之间的通信带宽和效率,很多学者提出了不 同的多核互连机制。目前仍是研究的热点问题【l 3 1 。 如何对异构多核处理器进行测试和验证,也是当前的研究热点之一【l 】【1 2 1 。 因为对异构多核处理器进行测试和验证很复杂。它的研究内容主要在于怎样 定义不同的体系结构处理器核间的接口,对多个处理器核进行协同测试。k a i r i c h t e :等人提出了一种事件模型接口和事件流机制,将传统的用于实时系 统测试的方法扩展到异构多核处理器的测试和验证过程中s y o o 1 7 】等人提出 了种基于软硬件接口的混合层的模拟方法,对异构多核处理器进行软硬件 协同测试与验证。j o a n nm p a u l 等人提出了一种系统级的建模和模拟方 法,对可编程的异构多核处理器进行系统级的建模与测试验证【5 】。但这些研 究大部分只是停留在理论阶段,能真正用于实践的,目前还很不成熟。任何 技术都在不断发展、不断进步,都延续着从概念的产生到研究的兴起,然后 再进一步发展、深化的过程。因此,计算机技术经过多年的发展之后,现在 已经进入多核时代。从理论上讲,只要支撑技术能够提供足够的集成度,那 么核的数量就可以无限增加。我们可以预测,随着时间的推移,技术的不断 进步,集成了更多核的处理器会不断面世。 在纳米工艺之后,工艺将会完成从晶体管到量子的变革。只要技术持续 向前发展,那么十年内出现具有大量核的处理器就会变成现实【l8 1 。随着可集 1 2 哈尔滨t 程大学硕+ 学伊论文 成的核的数量不断增长,处理器体系结构就能够在单个处理器内支持大量的 基于硬件、线程级的并行能力。 2 2 多核体系架构的操作系统 2 2 1 多核体系架构的操作系统模式 多核处理器带来了更强大的并行处理能力、更高的计算密度以及更低的 时钟频率,并且在很大程度上减缓了处理器的散热和功耗的问题。从上节中 可以看到,几大主要芯片厂商都推出了双核、四核甚至八核的多核处理器。 为了有效的利用多核技术,需要计算机软件根据多核硬件平台进行针对性的 设计。为了减少开发人员的工作,设计合适的操作系统是至关重要的。为了 解决这些问题,首先要研究支持多核处理器的操作系统的模式。 多处理器的操作系统模式主要有三种,非对称多处理( a s y m m e t r i

温馨提示

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

评论

0/150

提交评论