并行程序性能分析与循环调度技术
1. 并行计算模型相关参数及BSP模型
在并行程序性能分析中,涉及到一些重要的参数。例如,在 h - 关系的上下文中,g 表示平均传输一个内存字所需的步骤数。若在 h - 关系中,每条消息有 m 个字,其执行需要 l · m · g 步。对于实际的并行计算机,g 的值不仅取决于互连网络的二分带宽,还与所使用的通信协议和通信库的实现有关。l 的值受互连网络直径以及通信库实现的影响,l 和 g 都可以通过合适的基准程序来确定。其中,只有 p、l 和 g 是独立参数,s 用于对 l 和 g 的值进行归一化。
BSP(Bulk Synchronous Parallel)模型是一种通用模型,可作为不同编程模型的基础。BSP 程序的执行时间是执行该程序所进行的超级步执行时间之和。单个超级步的执行时间 $T_{superstep}$ 由三部分组成:
1. 处理器 $P_i$ 执行本地计算的执行时间 $w_i$ 的最大值。
2. 实现 h - 关系的全局通信时间。
3. 每个超级步结束时的屏障同步时间。
其计算公式为:$T_{superstep} = \max_{processors} w_i + h · g + l$
为了支持使用 BSP 模型开发高效的并行程序,开发了 BSPLib 库,它提供了用于初始化超级步、执行通信操作以及参与每个超级步结束时的屏障同步的操作。
BSP 模型还被扩展为 Multi - BSP 模型,该模型将原始的 BSP 模型进行扩展,以捕捉现代架构(特别是多核架构)的重要特征。具体来说,它扩展为一个具有任意 d 级的分层模型,用于模拟多个内存和缓存级别,并且在每一级都将内存大小
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



