社区
CUDA
帖子详情
Cyrosly:Red-Black SOR迭代与解并行三角矩阵谁快?
chinecuda
2009-08-18 10:59:57
Cyrosly:
对于PDE问题,例如Poisson方程,CUDA并行求解,分块求解三对角矩阵(例如你Blog上的)与多重网格迭代(例如 Red-Black SOR)谁更快一些?您是否做过类似的对比?Red-Black SOR是否效率很低?
小可在此先谢过!
...全文
353
3
打赏
收藏
Cyrosly:Red-Black SOR迭代与解并行三角矩阵谁快?
Cyrosly: 对于PDE问题,例如Poisson方程,CUDA并行求解,分块求解三对角矩阵(例如你Blog上的)与多重网格迭代(例如 Red-Black SOR)谁更快一些?您是否做过类似的对比?Red-Black SOR是否效率很低? 小可在此先谢过!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Cyrosly
2009-08-19
打赏
举报
回复
首先我那个求解三角矩阵方程方法一般配合LU,ILU或者cholesky,incomplete cholesky分解使用解线性方程组的直接解法,直接解法通常更快,但有时候受到有限的数据精度的限制而出现数值不稳定。但是处理对称正定或不定的问题时,使用用cholesky分解(LLT,LDLT)做预处理的PCG方法是个很有效的方法,因为cholesky数值稳定。Multigrid方法是理论上迭代法中收敛最快的方法(实际中也往往如此,但理论深度要求也是最高的)。MG方法一般用GS,weight-jacobi,SOR等迭代方法作为内迭代子,也就是说MG方法其实不是一种迭代方法,而只是经典迭代法加速收敛的手段。MG方法也可以用做PCG方法的预处理子,这方面的资料貌似很少,记得以前见过,如果找到就贴上来。另外MG方法分为AMG(代数多重网格方法)和GMG方法(几何多重网格),这2种方法各有优劣,但对于2维椭圆边值问题一样的有效。
最后你的问题:没有比较过,但是Red-black SOR的单步迭代消耗肯定比MG小.
依照我个人的看法,Red-black可以认为是一种“伪二重MG”方法(细网格隐藏在数据层,而粗网格则是由跨格计算确定),因为MG的实质是在不同的频域减弱各个频段的误差(细网格消除高频误差,粗网格消除低频误差,而在以往的迭代法中高频误差一般小时的很快,而低频误差则很慢(也即为什么收敛慢的原因),因此MG使用粗网格快速消除低频误差以达到快速收敛的目的),而RB方法每一步相当于在比原始细网格大一倍的尺寸的粗网格上进行迭代,而数据则是细致的密度分布,但是
每一步的迭代都是在粗网格上单向迭代(没有从粗网多细网的延拓过程),因此认为是一种不完全的“伪二重MG”方法更为符合逻辑和直觉(纯属个人愚见)
chinecuda
2009-08-18
打赏
举报
回复
另:有些资料上把Red-Black SOR归为多重网格,有的归为多重着色,还有直接归为经典迭代,看得头晕,小可没有系统学过并行计算程序设计,理论上讲Red-Black SOR究竟属于什么算法?
Z782282738
2009-08-18
打赏
举报
回复
Black SOR
SOR
迭代
法
解
大型稀疏矩阵
用于求
解
大型稀疏矩阵,用非零法存贮矩阵,
SOR
.rar_
SOR
_
SOR
迭代
法c
用
SOR
迭代
法求
解
线性方程组 线性方程组的超松弛法,也叫
SOR
法
sor
法
解
线性方程组 matlab程序
sor
法
解
线性方程组 matlab程序
雅可比
迭代
法,塞德尔
迭代
法,逐次超松弛法求
解
线性方程组
雅可比
迭代
法,塞德尔
迭代
法,逐次超松弛法求
解
线性方程组,有兴趣的可以参考一下
求
解
线性方程组: 高斯消元--LU分
解
--Jacobi
迭代
--高斯赛德尔--
sor
超松弛
迭代
求
解
线性方程组: 高斯消元--LU分
解
--Jacobi
迭代
--高斯赛德尔--
sor
超松弛
迭代
1.问题概述假定线性方程组 是一个最基本的计算模型,它在科学与工程计算中扮演着极其重要的角色。在
解
决此线性方程组时,我们首先想到的是线性代数课程中的求
解
方法,然而对于计算机来说,这是很难实现的,所以我们应当对此方法进行变形拓展。随着未知数个数的增加,求
解
就会变得越来越困难,当n很大时,用手工计算已经...
CUDA
589
社区成员
2,924
社区内容
发帖
与我相关
我的任务
CUDA
CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。
复制链接
扫一扫
分享
社区描述
CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章