稀疏线性代数方程组迭代法中的预处理技术研究.ppt
《稀疏线性代数方程组迭代法中的预处理技术研究.ppt》由会员分享,可在线阅读,更多相关《稀疏线性代数方程组迭代法中的预处理技术研究.ppt(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、混凝土材料断裂过程模拟程混凝土材料断裂过程模拟程序中的高性能并行算法开发序中的高性能并行算法开发吴建平、王正华吴建平、王正华国防科学技术大学计算机学院国防科学技术大学计算机学院并行与分布处理国防科技重点实验室并行与分布处理国防科技重点实验室报告内容报告内容v 原串行程序的结构与特点原串行程序的结构与特点v 单机计算速度的提升方法单机计算速度的提升方法v 并行算法设计时的若干关键并行算法设计时的若干关键 问题简介问题简介v 对高性能计算的几点看法对高性能计算的几点看法原原串行程序的结构特点串行程序的结构特点原原串行程序的结构特点串行程序的结构特点(续续)问题规模:问题规模:44117个网格点个网
2、格点 系数矩阵的总外形约系数矩阵的总外形约649M,分解需要约分解需要约3.3T个浮点操作个浮点操作 2.53GHz,1G内存:内存:CVF Debug模式,默认优化编译模式,默认优化编译 一次加载所发费的时间约一次加载所发费的时间约18.01小时;小时;Asesk子程序所发费的时间约子程序所发费的时间约17.9小时;小时;Demove总共需要约总共需要约17.78小时;小时;Foba所发费的时间共约所发费的时间共约7.3分钟;分钟;Demove占占总时间总时间98.74%,Demove+Foba的时间的时间 约占总时间的约占总时间的99.42%;原串行程序的结构特点原串行程序的结构特点(续续
3、)CVF Release模式,最佳优化编译模式,最佳优化编译 一次加载内一次加载内Asesk子程序约需子程序约需2.92小时;小时;Demove总共约需总共约需2.87小时;小时;Foba所发费的时间约所发费的时间约7.3分钟;分钟;Asesk+Foba的时间占总时间的时间占总时间99%左右;左右;分成分成21块计算时,辅存需要块计算时,辅存需要6个多个多G。报告内容报告内容v 原串行程序的结构与特点原串行程序的结构与特点v 单机计算速度的提升方法单机计算速度的提升方法v 并行算法设计时的若干关键并行算法设计时的若干关键 问题简介问题简介v 对高性能计算的几点看法对高性能计算的几点看法单机计算
4、速度的提升方法单机计算速度的提升方法 程序优化技术程序优化技术 循环调换循环调换 将重复计算缩减为一次将重复计算缩减为一次 浮点除法替换为浮点乘法浮点除法替换为浮点乘法 将循环内的计算尽可能外提将循环内的计算尽可能外提单机计算速度的提升方法单机计算速度的提升方法(续续)将直接法改进为预条件将直接法改进为预条件CGCG法法 迭代法内主要是矩阵乘向量,矩阵每行约迭代法内主要是矩阵乘向量,矩阵每行约81 个非零元,对个非零元,对44117个网格点的问题,一次个网格点的问题,一次 矩阵向量乘只要矩阵向量乘只要21.4M个浮点操作个浮点操作 选取选取ICT(50,10-3)预条件时,预条件构造时间预条件
5、时,预条件构造时间 19.6秒,秒,129次预条件迭代时间共次预条件迭代时间共38.31秒,残秒,残 量量2范数与右端项范数与右端项2范数的比值达范数的比值达7.410-11。单机计算速度的提升方法单机计算速度的提升方法(续续)先进的全局刚度矩阵装配技术先进的全局刚度矩阵装配技术 逐单元装配法逐单元装配法开辟有限的存储空间,用其对每个单元的信息逐步开辟有限的存储空间,用其对每个单元的信息逐步存储,用指针指明各未知量对应的行中各元素的列存储,用指针指明各未知量对应的行中各元素的列号与值。空间不足时,对相关单元都已存储的未知号与值。空间不足时,对相关单元都已存储的未知量对应的行进行装配,并倒空。量
6、对应的行进行装配,并倒空。直接逐行全局装配法直接逐行全局装配法直接利用指针来链接每个未知量所直接联系到的所直接利用指针来链接每个未知量所直接联系到的所有单元与在单元中的局部编号,逐未知量进行装配有单元与在单元中的局部编号,逐未知量进行装配报告内容报告内容v 原串行程序的结构与特点原串行程序的结构与特点v 单机计算速度的提升方法单机计算速度的提升方法v 并行算法设计时的若干关键并行算法设计时的若干关键 问题简介问题简介v 对高性能计算的几点看法对高性能计算的几点看法并行算法设计时的若干关键问题并行算法设计时的若干关键问题v 全局并行计算策略全局并行计算策略v 整体刚度矩阵的并行装配整体刚度矩阵的
7、并行装配v 稀疏线性方程组的并行求解稀疏线性方程组的并行求解v 稀疏向量的全局并行相加稀疏向量的全局并行相加全局并行计算策略全局并行计算策略v 全局按单元进行任务分配全局按单元进行任务分配v 对各个小数组,从对各个小数组,从0 0号进程读入号进程读入 后,广播到其他进程后,广播到其他进程v 最后一维为未知量个数的数组最后一维为未知量个数的数组 在每个进程上都保存一份在每个进程上都保存一份v 稀疏线性方程组的并行求解按稀疏线性方程组的并行求解按 未知量个数进行任务分配未知量个数进行任务分配整体刚度矩阵的并行装配整体刚度矩阵的并行装配v 确定与每个未知量直接相关的确定与每个未知量直接相关的 局部单
8、元个数局部单元个数v 在每个进程上进行局部装配在每个进程上进行局部装配v 对各个进程上的局部矩阵进行对各个进程上的局部矩阵进行 累加,得到整体刚度矩阵累加,得到整体刚度矩阵v 每个进程对局部每一行中的非每个进程对局部每一行中的非 零元按列号进行排序零元按列号进行排序稀疏线性方程组的并行求解稀疏线性方程组的并行求解v 稀疏矩阵与向量的并行乘法稀疏矩阵与向量的并行乘法 该操作的通信结构始终不变,事先确定通该操作的通信结构始终不变,事先确定通 信结构后,再在后续迭代中反复用其收集信结构后,再在后续迭代中反复用其收集 局部计算需要用到的其他进程上的分量局部计算需要用到的其他进程上的分量v ICTICT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 稀疏 线性代数 方程组 迭代法 中的 预处理 技术研究
限制150内