打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
基于CELL Broadband Engine开发高性能应用
  CELL BE处理器包括一个基于Powerpc架构的控制处理单元Power Processing Element (PPE)以及8个SIMD的协处理器单元——SynergistIC Processing Elements (SPE),以及用以连接PPE, 输入输出单元以及SPE的高速环形数据总线——Element Interconnect BUS (EIB)。CELL BE同时还提供了DMA指令和控制机制以用于在不同处理单元之间提供高效的通信。PPE和SPE均为RISC结构,指令字长为32位,寻址空间为64位。 SPE提供最高128位宽的SIMD的数据通路。工作在3.2GHz主频下,单个SPE对8位整型可提供51.2 Billion的峰值计算速度,对单精度浮点可提供25.6 GFlops的峰值计算速度。

  为了提高内存访问速度,CELL BE采用Rambus XDR DRAM内存,提供2个32位的数据访问通道,每个通道的访问速率为12.8GB/s。为了提高I/O访问速度,在CELL BE中采用了高速、可配置的I/O接口——7个发射通道和5个接收通道的Rambus PRAC FlexIO,FlexIO工作5GHz下时,其发送带宽和接收带宽分别为35GB/s和25GB/s。

  PPE和SPE都是基于RISC架构,双发射的SIMD处理器。CELL BE中所有的处理单元,I/O控制器,内存控制器都通过高速的EIB(4路128位宽的环形总线)互联。XIO接口提供与Rambus XDR内存的高速互连,FlexIO提供了高速I/O通道。PPE是一个兼容PowerPC 970架构的两路并发多线程处理器,包含一个32kB的L1 Cache(32kB的数据cache和32kB的指令cache), 256kB的L2 Cache以及一个VMX(VMX是PowerPC上的AltiVec多媒体扩展,Apple称为VeLOCity Engine。VMX本身就是一个向量处理单元,或者说是类似于Intel的SSE,SSE2的SIMD扩展。)单元。操作系统运行于PPE上,PPE负责对SPE进行调度,而SPE则负责主要的计算工作。SPE直接访问本地的Local Storage(LS)。它通过DMA方式访问主存,由DMA负责将指令和数据搬到LS。这种方式能够有效地减小内存读写延迟对处理器利用率的影响,因为 SPE的计算和DMA传输可以并行地进行。SPE是一个高度可配置的处理单元,SPE可以被配置成不同的运行方式和存储保护(Isolation)模式。在存储保护模式下,PPU和其它SPE不能访问该SPE的LS,从而在硬件层次上提供了安全机制。这种机制在一些场合是非常有用的,如DRM,PLC

  CELL BE编程模型

  对SPE的编程,可以采用高级语言,如C和C++。并且CELL BE的编译器及开发包已经对C/C++进行了扩展,以提供对Vector/SIMD的支持。

  实际上,对于应用程序的开发者来说,可以简单的将CELL BE看作一个9路的多处理器。由于PPE是一个双线程双发射、顺序执行的RISC处理单元,它的一个时钟周期可以处理来自两个线程的指令(即所谓硬件多线程SMT),因此加上8个SPE,同一时刻可以有10个任务在同时运行。总的来担琍PE适合作为控制和任务调度处理器,SPE则用于处理计算任务。

  CELL BE 存在多种编程模型,对于简单的SPE程序("small" SPE program)来说,与普通的应用程序编程是类似的。我们需要将任务进行划分,针对不同的SPE编写不同的代码,每个SPE完成一个特定的任务。这种方式下,SPE不需要访问主存,只需访问LS就够了。在这种方式下,SPE的数据段、代码段的大小限制为256kB (LS的大小)。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
科技深渊 篇一:PS3架构详解(cell,XDR,RSX)
MPI并行程序开发设计-------第一学并行计算机
CPU术语集全--脑力激荡
编译器发展史上的五个“十年”
拿起SIMD的武器II
高性能计算中并行的概念理解 | 英特尔® 软件
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服