一个可扩展的特征值求解对称三对角矩阵.doc

一个可扩展的特征值求解对称三对角矩阵.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一个可扩展的特征值求解对称三对角矩阵

Proc.Sixth SIAM科学计算的并行处理会议,pp.602- 609,诺福克,弗吉尼亚州,1993年3月 一个可扩展的特征值求解对称三对角矩阵基督教trefftz菲利普k.李天岩本文介绍了并行求解对称三对角矩阵特征值值满足方程:对其中的向量x就是所谓的特征向量,值为特征值。这个问题可以改写如下:给出,解。对称三对角矩阵显示在图1(a)中。 (a)对称三对角矩阵 (b)使用分割属性 图. 1. 矩阵特征值求解中的合并为0产生的矩阵,如图1(b)所示。设是子矩阵和的特征值,并设是A的特征值。分割属性指出i的所有值为。 分割属性是用于分割合并算法的基础上:矩阵和的特征值被发现,然后作为矩阵A最初的近似特征值。这个过程可应用于递归,直到达到可以很容易找到特征值的大小为2× 2的矩阵。不失一般性,假定矩阵的秩n是2的幂。该算法有k个阶段。在第一个阶段,每个2× 2阵列的特征值被发现使用二次公式。来自邻近的成对子阵列的结果被合并,排序,并用于解决在第二阶段中的4 × 4阵列。重复同样的程序是为以下几个阶段:在第阶段,对大小为的子矩阵通过拉格朗日的方法找到的特征值,使用第个阶段的结果作为初始近似值。算法在[1]中详细描述如下: 开始 找到的2×2子矩阵的特征值 对i从2到k 对j从1到 把大小为和的两个子矩阵组合到一起 (即合并他们的特征值) 对 从1到 ?? 使用拉格朗日迭代找到在这个级别上的 结束 最初的并行实现 在并行上这种算法,一个关键的目标是正忙着为解决特征值的最大化处理器。设是被用于该方案的执行的处理器数量,并设是输入矩阵的大小。在最初的并行方法,求解特征值的责任是在处理器中平均分配是为了负责寻找个特征值。在第一个k-d阶段中,处理器之间没有沟通是必要的,因为每个子矩阵是非常小足够可以被一个单一的处理器处理。具体来说,每个节点开始独立执行的第一个k-d阶段,从而解决为了k-d(编号从左至右)的子矩阵的个特征值。 在最后的d个阶段中,节点必须要合并,排序到其他节点沟通其结果,并且其相应的特征值集返回作为下一阶段的输入。元素(节点)的处理被分为两类:汇和客户。在立方体-2中,该处理器的子多维数据集d分配给程序执行顺序编号是从0到。在k-d+1个阶段,奇数的节点扮演客户的角色,并发送其特征值到偶数的节点,这是在这一阶段的汇。具体来说,客户端节点向汇节点发送其结果。每个汇合并它在k-d阶段发现的与它的客户端收到的的特征值,并返回客户端列表中的上半部分。汇解决了大的子矩阵特征值的下半部,而它的客户端解决了上半部。 结果在第k-d+2阶段中被传送到负责汇的这些节点上。在这个阶段中,有着4倍处理器ID的每一个节点成为一个汇。如果汇的ID是i,那么在这个阶段它的客户端将是节点i+1,i+2 和 i+3。对三个客户端节点合并其结果是对现在每一个汇节点负责,每四个节点从以前的合并中来解决矩阵的四分之一。三分之一的客户端完成各自的任务,他们在下一个阶段中把他们的结果返回到负责八个客户端的汇中。这个过程在最后阶段以这种方式一直持续到节点0成为唯一的汇和所有其余的节点成为客户端。图3描述了这个情况,在一个3立方也就是有着8个节点的超立方体。 这种沟通方式是非常非常适合超立方体的。在任何阶段汇是前一阶段其他汇的近邻。每个汇和它的客户端在自己的子多维数据集工作,所以他们的沟通与其他汇和客户端的沟通是不相交的。立方体-2支持子多维数据集内的广播业务,可以通过汇用来有效地向客户端传送结果。通过各个阶段的特征值计算每个节点的数量仍然不断。 图.2.在3立方体的汇和客户端 这个并行算法的性能测试结果表明,对于64位处理器的速度是被限制到大约25。为了发现这种行为背后的原因,我们使用一个被称为段的可视化工具[3]。图4(a??)显示了在立方体- 2上2048× 2048矩阵上执行的算法的痕迹。(对于示范的目的,只有16个节点的立方体的例子被显示。)阴影部分表示当前处理器正忙着。在这个例子中,该算法需要11个阶段。阶段1至7间没有通信的情况下执行,并表示着图左边黑色部分。阶段8到11需要节点之间的合作(和沟通)。在图4(a)所示,处理器的闲置时间占很大一部分。每一个直到在X轴上代表着0.15秒。该算法需要65.9秒才能完成。 进一步调查显示,流程所需的时间来完成它们的特

文档评论(0)

linsspace + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档