多核程序设计课件1-概述

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1多核程序设计2008年8月18日浙江大学嵌入式研发中心教材主教材:《多核程序设计》,ISBN9-787302-158356,清华大学出版社,2007年8月参考书:《多核程序设计技术-通过软件多线程提升性能》,电子工业出版社,ISBN9787121038716,2007年3月浙江大学嵌入式研发中心实验环境硬件:英特尔多核计算机:双核酷睿2软件:Visualstudio2003/2005IntelC++compiler10.0forlinux&forwindowsIntelMKL9.1forLinux&WindowsIntelThreadChecker3.1forLinux&WindowsThreadProfiler3.1forWindowsVtune9.0forWindows&Linux浙江大学嵌入式研发中心课件、工具、录像、代码微处理器发展史1945年,世界上第一台全自动电子数字计算机ENIAC计算机的发展按照硬件工艺可以分为第一代(1946~1958):电子管数字计算机。第二代(1958~1964):晶体管数字计算机。第三代(1964~1971):集成电路数字计算机。第四代(1971年以后):大规模集成电路数字计算机。浙江大学嵌入式研发中心微处理器1971年,第一款微处理器40041978年,英特尔公司80861979年,英特尔公司又开发出了80881981年,美国IBM公司将8088芯片用于其研制的PC机1982年,英特尔公司研制出了80286微处理器1985年10月17日,英特尔80386DX正式发布1989年,英特尔推出80486芯片1993年,新一代586CPU问世1996年底,多能奔腾PentiumMMX1998年,奔腾二代PentiumII、至强微处理器Xeon、赛扬Celeron1999年春,英特尔公司PentiumIII奔三2000年,英特尔公司Pentium4,奔四2002年,英特尔超线程技术(HT,Hyper-Threading)2005年4月18日,英特尔全球同步首发奔腾D处理器浙江大学嵌入式研发中心指令集变化提高电脑在多媒体、3D图形方面的应用能力MMX57条多媒体指令SSE3DNOW!3D加速指令集怎么利用这些指令用专业编译器浙江大学嵌入式研发中心多核技术是处理器发展的必然推动微处理器性能不断提高的因素半导体工艺技术的飞速进步体系结构的不断发展这两个因素相互影响,相互促进工艺和电路技术的发展使得处理器性能提高约20倍体系结构的发展使得处理器性能提高约4倍编译技术的发展使得处理器性能提高约1.4倍。如今,这个规律已经很难维持浙江大学嵌入式研发中心十亿晶体管时代即将到来通用微处理器的主频已经突破了4GHz数据宽度也达到64位。65nm工艺的微处理器已经批量生产大连45nm工艺以下的微处理器也已问世芯片上集成的晶体管数目已经超过10亿个如何有效地利用数目众多的晶体管?多核通过在一个芯片上集成多个简单的处理器核利用这些晶体管资源发挥其最大的能效浙江大学嵌入式研发中心门延迟逐渐缩短,全局连线延迟却不断加长晶体管特征尺寸不断缩小使得晶体管门延迟不断减少互连线延迟却不断变大芯片的制造工艺达到0.18微米甚至更小时线延迟已经超过门延迟成为限制电路性能提高的主要因素CMP(单芯片多处理器)的分布式结构全局信号较少,与集中式结构的超标量处理器结构相比,在克服线延迟影响方面更具优势浙江大学嵌入式研发中心规则Pollack规则处理器性能的提升与其复杂性的平方根成正比如一个处理器的硬件逻辑提高一倍,至多能提高性能40%采用两个简单处理器构成一个相同硬件规模的双核处理器可获得70%~80%的性能提升在面积上也同比缩小浙江大学嵌入式研发中心能耗不断增长芯片的发热现象日益突出工艺技术的发展和芯片复杂性的增加多核处理器单核速度较慢处理器消耗较少的能量,产生较少的热量单核处理器里增加的晶体管可用于增加多核处理器的核多核处理器关闭(或降频)一些处理器等低功耗技术浙江大学嵌入式研发中心设计成本的考虑设计成本随时间呈线性甚至超线性的增长处理器结构复杂性的不断提高人力成本的不断攀升多核处理器处理器IP复用极大降低设计的成本模块的验证成本也显著下降浙江大学嵌入式研发中心体系结构发展的必然超标量结构和超长指令字结构在目前的高性能微处理器中被广泛采用超标量结构使用多个功能部件同时执行多条指令,实现指令级的并行控制逻辑复杂,实现困难超标量结构的指令并行程度一般不超过8超长指令字结构使用多个相同功能部件执行一条超长的指令编译技术支持问题二进制兼容问题。未来的主流应用需要同时执行更多条指令的能力单一线程不太可能提取更多的并行性不断增加的芯片面积提高了生产成本设计和验证所花费的时间变得更长更复杂化的设计也只能得到有限的性能提高浙江大学嵌入式研发中心单芯片多处理器通过在一个芯片上集成多个微处理器核心来提高程序的并行性每个微处理器核心是一个相对简单的单线程微处理器或者比较简单的多线程微处理器多个微处理器核心就可以并行地执行程序代码具有了较高的线程级并行性由于CMP采用了相对简单的微处理器作为处理器核心使得CMP具有高主频、设计和验证周期短、控制逻辑简单、扩展性好、易于实现、功耗低、通信延迟低等优点CMP能充分利用指令级并行和线程级并行目前CMP已经成为处理器体系结构发展的一个重要趋势浙江大学嵌入式研发中心并行计算机由一组处理单元组成,这组处理单元通过相互之间的通信与协作,以更快的速度共同完成一项大规模的计算任务。出现背景:60年代初期,晶体管以及磁芯存储器的出现,处理单元变得越来越小,存储器也更加小巧和廉价。出现规模不大的共享存储多处理器系统,即大型主机(Mainframe)。60年代末期,同一个处理器开始设置多个功能相同的功能单元,流水线技术也出现了,在处理器内部的应用大大提高了并行计算机系统的性能。两个最主要的组成部分计算节点节点间的通信与协作机制浙江大学嵌入式研发中心并行计算机的弗林分类Flynn根据指令流和数据流的不同组织方式,把计算机系统的结构分为以下四类:单指令流单数据流(SingleInstructionstreamSingleDatastream,SISD)单指令流多数据流(SingleInstructionstreamMultipleDatastream,SIMD)多指令流单数据流(MultipleInstructionstreamSingleDatastream,MISD)多指令流多数据流(MultipleInstructionstreamMultipleDatastream,MISD)浙江大学嵌入式研发中心并行计算机系统结构分类分布式存储器的SIMD处理机含有多个同样结构的处理单元(PE),通过寻径网络以一定方式互相连接。每个PE有各自的本地存储器(LM)。向量超级计算机(共享式存储器SIMD)集中设置存储器,共享的多个并行存储器通过对准网络与各处理单元PE相连。在处理单元数目不太大的情况下很理想。对称多处理器(SMP)一个计算机上汇集了一组处理器,各处理器之间共享内存子系统以及总线结构。并行向量处理机(PVP)集群计算机浙江大学嵌入式研发中心片上多核处理器架构片上多核处理器(ChipMulti-Processor,CMP)就是将多个计算内核集成在一个处理器芯片中,从而提高计算能力。按计算内核的对等与否,CMP可分为同构多核和异构多核CPU核心数据共享与同步总线共享Cache结构:每个CPU内核拥有共享的二级或三级Cache,用于保存比较常用的数据,并通过连接核心的总线进行通信。基于片上互连的结构:每个CPU核心具有独立的处理单元和Cache,各个CPU核心通过交叉开关或片上网络等方式连接在一起。给程序开发者带来的挑战浙江大学嵌入式研发中心2002年超线程技术(HT,Hyper-Threading)2005年4月18日奔腾D处理器,第一个多核AMDK8架构IntelCore微架构Intel四核AMD四核?浙江大学嵌入式研发中心多核特点优势功耗低性能高缺点编程复杂浙江大学嵌入式研发中心(2GB/s)1066/800MHzFSBCore1L2Cache(forCore1)Core0L2Cache(forCore0)6USB2.0IntelMatrixStorageBIOSSupportIntelPro1000LAN浙江大学嵌入式研发中心核处理器2007-02-11核心面积275平方毫米主频3.16GHz电压0.95V数据带宽1.62Tb/s浮点运算能力1.01TFlops相当于1万颗10年前的PentiumPro功耗不过62W比core2duo还低是四核心XeonX53552.66GHz的大约一半,浮点运算能力估计为50-60GFlops(每秒十亿次)浙江大学嵌入式研发中心系统芯片或称片上系统(SystemonChip,简称SoC)在一个芯片上实现完整功能信号采集、转换、存储、处理和I/O等IP核复用IP,IntellectualProperty,知识产权主要用于嵌入式系统浙江大学嵌入式研发中心芯片组对多核的支持——固件固件:嵌入到硬件设备中的软件烧写在flash等介质中可以被当作一个二进制映像文件由用户从硬件设备中调用在集成电路只读存储器中的计算机程序是可擦写可编程芯片程

1 / 39
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功