首页> 外文会议>International workshop on multicore software engineering 2008 >BlockLib: A Skeleton Library for Cell Broadband Engine
【24h】

BlockLib: A Skeleton Library for Cell Broadband Engine

机译:BlockLib:用于单元宽带引擎的骨架库

获取原文
获取原文并翻译 | 示例
获取外文期刊封面目录资料

摘要

Cell Broadband Engine is a heterogeneous multicore processor for high-performance computing and gaming. Its architecture allows for an impressive peak performance but, at the same time, makes it very hard to write efficient code. The need to simultaneously exploit SIMD instructions, coordinate parallel execution of the slave processors, overlap DMA memory traffic with computation, keep data properly aligned in memory, and explicitly manage the very small on-chip memory buffers of the slave processors, leads to very complex code. In this work, we adopt the skeleton programming approach to abstract from much of the complexity of Cell programming while maintaining high performance. The abstraction is achieved through a library of parallel generic building blocks, called BlockLib. Macro-based generative programming is used to reduce the overhead of genericity in skeleton functions and control code size expansion. We demonstrate the library usage with a parallel ODE solver application. Our experimental results show that BlockLib code achieves performance close to hand-written code and even outperforms the native IBM BLAS library in cases where several slave processors are used.
机译:Cell Broadband Engine是用于高性能计算和游戏的异构多核处理器。它的体系结构可提供令人印象深刻的最佳性能,但与此同时,使其很难编写高效的代码。需要同时利用SIMD指令,协调从处理器的并行执行,将DMA存储器流量与计算重叠,使数据在内存中正确对齐以及显式管理从处理器的非常小的片上存储器缓冲区的需求,导致非常复杂码。在这项工作中,我们采用框架编程方法从Cell编程的许多复杂性中抽象出来,同时保持高性能。通过一个称为BlockLib的并行通用构建模块库来实现抽象。基于宏的生成程序设计用于减少骨架功能和控制代码扩展中通用性的开销。我们通过并行ODE求解器应用程序演示了库的用法。我们的实验结果表明,在使用多个从属处理器的情况下,BlockLib代码可获得接近于手写代码的性能,甚至优于本地IBM BLAS库。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号