并行计算,就是多个进程并行协作,完成特定的任务。现在我们假定一个并行系统,包含了p个处理机,每个处理机一个进程,我们可以分别用字符“0”,“1”,...,“p-1”来引用它们,或者为了清晰,我们用 Pi 来引用它们,i 表示一个进程的进程号,进程之间可以相互传递消息,所谓消息,指的是一个数据结构。
在并行编程中,我们用程序代码定义好一个过程,每个进程都将运行这段程序代码定义的过程,也就是说,代码必须是通用的。接下来我们用并行矩阵计算的实例来说明。
矩阵计算
矩阵计算问题有很多种类型,例如:
求解线性代数方程组 Ax = b
线性最小二乘问题 given b in R^m, for x in R^n,minimize ||Ax - b||^2
矩阵特征值问题 Ax = λx
矩阵奇异值分解 A = U∑V^T
我们可以用举世闻名的数学归纳法来证明如此分块的正确性,不过这并不是本文重点,不再赘述。
时间: 2024-10-01 12:41:10