l*****s 发帖数: 774 | 1 我想用MPI编一个简单的程序,就是矩阵的 LU decomposition.
有三种方法:
1.按照 Row 分
2.按照 Column 分
3.按照 块 分
想问一下,哪一种方法效率最好,最容易实现? Thanks |
l******n 发帖数: 9344 | 2 个人觉得按row比较好(column应该是一样的)
【在 l*****s 的大作中提到】 : 我想用MPI编一个简单的程序,就是矩阵的 LU decomposition. : 有三种方法: : 1.按照 Row 分 : 2.按照 Column 分 : 3.按照 块 分 : 想问一下,哪一种方法效率最好,最容易实现? Thanks
|
K*****n 发帖数: 23 | 3 容易程度上,1、2应该是一样的,3稍微复杂。
效率问题,我觉得取决于编程语言,看行优先还是列优先。
最好的办法,试试再说。
【在 l*****s 的大作中提到】 : 我想用MPI编一个简单的程序,就是矩阵的 LU decomposition. : 有三种方法: : 1.按照 Row 分 : 2.按照 Column 分 : 3.按照 块 分 : 想问一下,哪一种方法效率最好,最容易实现? Thanks
|
c*****g 发帖数: 119 | 4 3.
用mpi_cart_create划分procs
这个软件就是用的方法3
http://crd.lbl.gov/~xiaoye/SuperLU/#superlu_dist
【在 l*****s 的大作中提到】 : 我想用MPI编一个简单的程序,就是矩阵的 LU decomposition. : 有三种方法: : 1.按照 Row 分 : 2.按照 Column 分 : 3.按照 块 分 : 想问一下,哪一种方法效率最好,最容易实现? Thanks
|
g*****u 发帖数: 14294 | 5 你可能得先琢磨一下LU分解算法可不可并行。这东西因为很基础很重要,所以从理论到
实践论述很多。你不妨检索一下。
一个特例是Cholesky分解,用得很多。你看看Cholesky分解并行算法里的Multi-
frontal类方法对你LU分解是否有启发。
这只是我的一点皮毛拙见,仅供参考。 |
B******m 发帖数: 2643 | 6 我用PVM做过,当然是块分比较好,因为这样损失在inter processor communication的
时间最短。
【在 l*****s 的大作中提到】 : 我想用MPI编一个简单的程序,就是矩阵的 LU decomposition. : 有三种方法: : 1.按照 Row 分 : 2.按照 Column 分 : 3.按照 块 分 : 想问一下,哪一种方法效率最好,最容易实现? Thanks
|