Presentation is loading. Please wait.

Presentation is loading. Please wait.

华南理工大学 陈虎 博士 tommychen74@yahoo.com.cn 多核处理器技术 华南理工大学 陈虎 博士 tommychen74@yahoo.com.cn.

Similar presentations


Presentation on theme: "华南理工大学 陈虎 博士 tommychen74@yahoo.com.cn 多核处理器技术 华南理工大学 陈虎 博士 tommychen74@yahoo.com.cn."— Presentation transcript:

1 华南理工大学 陈虎 博士 tommychen74@yahoo.com.cn
多核处理器技术 华南理工大学 陈虎 博士

2 参考文献 [1] Tom R. Halfhill,Intel Goes Quad, Issue #234,Processor Watch,Oct. 19, 2006 [2] Cameron McNairy, Rohit Bhatia, MONTECITO: A Dual-Core, Dual-Thread ITANIUM Processor, IEEE Mirco, Mar./Apr., 2005 [3]Ron Kalla,Balaram Sinharoy, Joel M. Tendle, IBM POWER5 CHIP: A Dual-Core, Multithreaded Processor, IEEE Micro, Mar./Apr., 2004 [4] Poonacha Kongetira, Kathirgamar Aingaran, Kunle Olukotun, NIAGARA: A 32-way Multithreaded SPARC Processor, IEEE Micro, Mar./Apr., 2005 [5] Toshinari Takayanagi, Jinuk Luke Shin, ect., A Dual-Core 64-bit UltraSPARC Microprocessor for Dense Server Applications, IEEE JOURNAL OF SOLID-STATE CIRCUITS, Vol.40(1):7-18, JAN. 2005 [6] Intel Corp., Intel IXP2400 Network Processor Product Brief, [7] Motorola Inc., Motorola C-5 Architecture Guide, [8] John Montrym, Henry Moreton, THE GEFORCE 6800, IEEE Micro, Mar./Apr., 2005 [9] J. A. Kahle, etc., Introduction to the Cell multiprocessor, IBM J. RES. & DEV. VOL.49(4/5): , JULY/SEP., 2005 [10] Ujval J. Kapasi, etc., Programmable Stream Processors, IEEE Computer, Aug.,2003 [11] Tom R. Halfhill,Ambric's New Parallel Processor, Issue #234 - Processor Watch - October 19, 2006 [12] Sriram Vangal, Jason Howard, etc., An 80-Tile 1.28TFLOPS Network-on-Chip in 65nm CMOS, IEEE International Solid-State Circuits Conference, 2007

3 微处理器技术发展的主要历史回顾 90年代——增大指令的并行发射能力 90年代末期——提高主频
指令级并行性自身存在很大限制,超标量技术已经到了尽头; VLIW(超长指令字)存在二进制代码不兼容,对编译要求高的缺点; 90年代末期——提高主频 流水线不断细化,指令间相关性导致系统复杂性大大提高; Memory Wall,存储器性能滞后,严重影响整体性能; 功耗问题严重;

4 微处理器技术发展的主要历史回顾 本世纪前5年——多线程 当前和未来五年——多核
只能屏蔽线程的存储器访问延迟,增加系统吞吐率(15%左右),并未提高单个单线程的执行速度; 当前和未来五年——多核 充分利用摩尔定律带来的芯片面积,放置多个微处理器内核; 通过开发程序内的线程级或进程级并行性提高性能

5 典型的多核处理器系统 通用处理器: 网络处理器 嵌入式系统 图像处理 多媒体处理 实验系统 Intel——Xeon 5300 (四核)
IBM——POWER5(双核) SUN——NIAGARA(8核)、UltraSpac(双核) 网络处理器 Intel——IXP2400 Motorola——C-5 嵌入式系统 TI——OMAP,Davinci ARM——ARM11MP 图像处理 Nvdia——GF6800 多媒体处理 IBM,Sony和Toshiba——Cell处理器 Stanford大学——Imagine 实验系统 Ambric——AM2045(360核) Intel——80个核的实验处理器

6 多核处理器系统中的主要问题 互连结构如何? 并行程序设计模型如何? 每个处理器地址空间的关系怎样? 存储器层次如何划分?
如何保持存储器的一致性? 并行程序设计模型如何? 互连结构如何?

7 存储器结构——cc-UMA cache-coherence Unified Memory Access
所有CPU共享一个统一的地址空间;有单独的L1 Cache; 采用多级Cache结构; 采用总线或者Crossbar作为互连结构; 使用Cache一致性协议维护数据一致性; 采用多线程或者多进程作为并行软件设计方法 CPU0 CPU1 CPUn L1 Cache L1 Cache L1 Cache L1 Cache L2, L3 Caches Maim Memory

8 SUN’s NIAGARA 8个4线程处理器通过crossbar连接到4个L2 Cache L1 Cache: Cache一致性协议:
16KB for Instructions 8KB for Data Cache一致性协议: 在L2 Cache建立L1 Cache的tag shadows 读不命中时,根据L2 Cache的tag shadow寻找合适数据; 写数据时,无效所有具有此拷贝的L1 Cache。

9 ARM’s ARM11MP 多个ARM11核有独自的L1 Cache 通过Snoop Control Unit实现Cache 一致性协议:
保持了L1 Cache物理地址的Tag 采用MESI( Modified, exclusive, shared, invalid)协议

10 cc-UMA的评价 优点: 缺点: 结论 硬件实现数据一致性协议,软件不需要关心; 多线程/进程的并行软件资源丰富;
Cache一致性协议的性能和面积开销; Cache一致性协议可能对互连结构有特殊要求,例如侦听协议需要总线结构,影响了互连结构主频和数据宽度; 总线或Crossbar难以支持更多的处理器; 结论 适用于通用计算 连接的处理器数目受到限制

11 Connection Achitecture
存储器结构——异构多处理器 系统中的处理器类型不完全一致 典型配置是一个RISC处理器+一个或多个DSP 每个处理器有独自的Cache 地址空间不完全重叠 数据一致性由软件/硬件协同完成 CPU0 CPU1 CPUn L1 Cache L1 Cache L1 Cache L1 Cache Connection Achitecture Maim Memory

12 存储器结构——LM Local Memory
每个从CPU(SCPU)仅能访问局部存储器 主处理器(MCPU)将各个局部存储器作为全局地址映射的一个部分 采用环行、流水线等互连结构; 硬件提供简单的数据一致性方法(如DMA一致性) 由软件控制一致性 MCPU SCPU0 SCPUn Cache LM LM LM Connection Architecture Maim Memory

13 IBM’s Cell 主CPU——64bit PowerPC 从CPU——8个SPE,包含: 32K L1Cache
地址空间包括所有的局部存储器和主存 从CPU——8个SPE,包含: 4个并行可执行单元; 128KB局部存储器 仅能直接访问局部存储器,需要通过DMA访问其它局部存储器或者主存

14 IBM’s Cell 四路环行连接; 集中式仲裁; 数据宽度16字节/环; 主频1.6GHZ 峰值传输带宽204.8Gbps
通过DMA实现数据交换; 有全局唯一的DMA地址一致性检查部件

15 Intel的80核处理器 单个处理器上集成了80个处理单元 80个处理器单元按照10×8的mesh结构连接 采用65nm工艺实现
主频4GHZ 性能达到TFLOPS

16 Intel的80核处理器 每个处理单元包含: 两个浮点乘加器(FMAC) 寄存器文件 2KB数据存储器 3KB指令存储器
五方向路由节点(Router)

17 Nvidia’s GeForce6800 多级专用处理器 流水线方式连接 每个处理器有局部存储器或寄存器组

18 LM结构的评价 优点: 缺点: 适合于特定的应用 局部存储器与处理器核紧密耦合,存储器带宽高; 数据一致性检查机制比较简单,开销大幅度小;
面向应用和针对芯片布局设计的连接拓扑结构,提高处理器核之间互连通道的频率和带宽。 缺点: 局部存储器的空间有限,使用和调度完全需要软件控制,这直接造成了软件设计的难度,难以继承业已存在的丰富软件资源。 适合于特定的应用

19 Intel® Multi-core 独立L2 Cache,独立外部存储器接口 共享的L2 Cache和外部存储器接口

20 Intel® Multi-core 独立L2 Cache,共享存储器接口 独立L2 Cache和L3 Cache, 共享存储器接口

21 多核时代对软件设计的挑战 在单个芯片上集成了众多处理器核,软件人员如何能发挥出它们的性能优势,试想一下在有100个处理器核上编写程序?
答案在于程序的并行化!

22 程序并行化的主要途径 通过编译技术将串行程序并行化 设计全新的并行程序设计语言 串行语言加并行库或伪注释制导语句的扩展 自主设计并行化程序
目前并行编译技术对线程级、任务级的并行化尚处于起步阶段 设计全新的并行程序设计语言 这需要全部改写原来的程序,工程量巨大 串行语言加并行库或伪注释制导语句的扩展 增加一个库或一些新的制导语句来帮助进行并行化和并行 自主设计并行化程序


Download ppt "华南理工大学 陈虎 博士 tommychen74@yahoo.com.cn 多核处理器技术 华南理工大学 陈虎 博士 tommychen74@yahoo.com.cn."

Similar presentations


Ads by Google