40、通过旁路技术挖掘Cell/B.E.架构的局部性

通过旁路技术挖掘Cell/B.E.架构的局部性

1. EIB带宽问题与应对策略

在Cell/B.E.架构中,当EIB(Element Interconnect Bus)流量集中指向单个EIB元素时,会出现带宽问题。例如,若SPE5、SPE7、SPE2和SPE4同时尝试与SPE6通信,它们的最大聚合带宽102.4GB/s会使SPE6不堪重负。

为应对带宽限制,可采用软件缓存和双缓冲技术。SPE软件缓存通过在SPE内部缓存和重用数据,减少通信次数,有效降低竞争和阻塞程度。而双缓冲技术虽不能减少竞争和阻塞,但可通过将通信与计算重叠来隐藏通信延迟,减轻其对计算的影响。

2. Cell Superscalar与CellSs环境

CellSs环境由编译器和库组成,为Cell/B.E.提供编程接口。它能方便地将标准的(顺序)C或Fortran代码转换为并行代码。用户只需在原始代码中添加编译指示,标记要在SPE中执行的函数(或任务)。

在运行时,CellSs执行用户代码并组织并行执行。其主要程序在PPE(Power Processing Element)上运行,同时运行CellSs PPE运行时库。该库有两个独立线程:
- 主线程:执行用户应用程序,重命名参数以避免虚假依赖,并根据真实依赖定义任务优先级。
- 辅助线程:利用任务和依赖信息构建任务依赖图,负责通过回调与SPE进行通信和同步。

CellSs SPE运行时库负责在主内存和本地存储之间传输参数并执行任务。它为每个SPE实现了本地软件缓存以减少数据传输次数,还采用双缓冲技术隐藏DMA(Direct Memory Access)延迟。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值