●缓存和scratch pad的差别
通过总线连接的CPU内核心各个较小容量的存储器就组成了Cell B.E.。Cell B.E.通过“Element Interconnect Bus (EIB)”,1个“PPE (Power Processor Element)”,各个256K存储器以及8个数据处理内核“SPE (Synergistic Processor Element)”连接。这里的不同就是Cell B.E.是每个处理器核心的本地存储器,而不是缓存。这些是完全的软件控制。
目前最新的GPU架构也是如此。比如NVIDIA的GeForce 8800(G80)/GTX 200(GT200)架构就是每个处理器簇“Streaming Multiprocessor (SM)”配备16KB的共享内存。而AMD(原ATI)的Radeon HD 4800(RV770)也是配备了与G80/GT200相同的存储器。
Cell B.E与GPU没有选择缓存还是scratch-pad memory的原因就是streamprocessing缓存效果不高。关于这点Cell B.E.架构设计师以及GPU设计师都做出了同样的说明。根据介绍Intel在增加了DETAPURIFETCHI指令之后可以让Larrabee能够像scratch pad那样使用缓存。这个设计与intel下一代CPU架构“Intel Core i7(Nehalem:neharen)”是相似的。
PS3上Cell B.E.介绍
Nehalem的缓存架构