并行计算的执行时间分析与计算模型
在并行计算中,对执行时间的分析以及选择合适的计算模型对于优化算法和提高性能至关重要。下面将详细介绍并行执行时间的分析以及几种常见的并行计算模型。
并行执行时间分析
在并行计算中,我们常常需要分析不同情况下的并行执行时间,以找到最优的处理器数量,提高计算效率。
并行矩阵 - 向量积
对于矩阵 - 向量积 $A\cdot b = c$(其中 $A \in R^{n\times n}$,$b \in R^{n}$),可以采用行分布或列分布两种方式进行并行实现。为了推导描述并行执行时间的函数,我们假设 $n$ 是处理器数量 $p$ 的倍数,即 $r = \frac{n}{p}$,并且一次算术运算需要 $\alpha$ 个时间单位。
- 行分布实现 :
处理器 $P_k$ 存储矩阵 $A$ 的第 $r\cdot(k - 1) + 1 \leq i \leq r\cdot k$ 行,并计算结果向量 $c$ 的元素 $c_i = \sum_{j = 1}^{n} a_{ij} \cdot b_j$。对于这 $r$ 个值,每个值的计算需要 $n$ 次乘法和 $n - 1$ 次加法运算,因此大约需要 $2nr\alpha$ 的计算时间。向量 $b$ 需要进行复制。如果结果向量 $c$ 也需要复制,则需要执行多播操作,每个处理器 $P_k$ 提供 $r = \frac{n}{p}$ 个元素。 - 列分布实现 :
处理器 $P_k$ 存储矩阵 $A$ 的第 $r\cdot(k - 1) + 1 \le
超级会员免费看
订阅专栏 解锁全文

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



