一种具有重排通信的数据分布策略

一种具有重排通信的数据分布策略摘要:主要讨论了一种适用于分布和共享内存的循环级的数据分布策略。该方法支持由数据重排而引起的通信。关键词:高性能并行计算机;自动并行编译;数据分布;计算划分:TP314文献标志码:A:1001-3695(2007)07-0019-03并行处理的思想几乎是随着计算机的诞生而诞生的。并行处理技术一直是人们提高计算能力的一个重要手段。在应用并行计算机时,人们总是希望有一个具有自动并行化功能的并行编译系统[1]来自动发掘程序中的并行性,从而使串行程序能自动转换为并行程序。并行程序编译器是一个可以将串行程序自动转换为等价并行程序的编译器,然后再由并行语言的系统编译器将转换出来的并行程序编译为机器码在并行机器上予以执行。虽然并行化编译技术有一定的局限性,但它仍然是并行计算机系统中最重要的程序开发工具之一。提高并行化编译方法对充分利用并行机资源和提高并行机效率起着十分重要的作用。基于共享内存的自动并行编译技术已经比较成熟;基于分布内存的并行编译技术由于数据划分问题还存在着很多困难。本文重点针对分布内存体系结构中的数据分布及优化技术进行了讨论。??在分布存储模式下,对单一循环的最大限度并行化和本地化[2]的技术已经比较成熟,而如何对多循环进行最优的并行化和本地化则是一个需要解决的问题。Kennedy和Kremer表明寻找最佳的数据分布模式的问题是NP完全问题[3],但研究者针对特定的程序模式提出了许多数据分布方案。对于高性能并行计算机而言,如何找到一种好的计算和数据划分,对数据和计算进行合理划分,增强数据本地化,减少处理器间的通信是提高其并行性能的关键。但在数据划分过程中,重排通信有时不可避免,如何进行合理的数据和计算划分以减少通信并最大限度地利用程序的并行性,是并行编译中的一个重要问题。??1具有完全一致数据分布的数据和计算的划分方法??在分布存储的机器上,循环级并行的并行性是通过循环嵌套迭代空间的分解来实现的。过程内一致性数据分布是指在整个过程中数组的分布方式唯一,即无数据重排。??在过程内求解具有一致性数据分布的数据和计算划分[4]过程中,首先要定义三个向量空间,即循环迭代空间L、数组下标空间A、处理器空间P;然后基于以上三个向量空间建立一组满足分解条件的仿射关系方程式;最后通过解方程来找到满足条件的数据划分和计算分解。有解则存在具有过程内完全一致的数据分布,使得程序能够并行执行;无解则程序只能串行执行。??在上述三个定义中,将计算和数据划分的线性部分用线性矩阵C、D表示,划分的偏移部分用常向量δ、γ表示。??若数组元素和循环迭代满足上述方程[5]关系,则这种划分是一种无重组无流水通信的划分,这种分解称为线性分解。数据分布方式是一种过程内具有完全一致数据分布的数据划分。这种分解方法是本文进一步分析具有数据重排的数据和计算划分方法的基础。??2具有数据重排的数据和计算划分方法??数据和计算分解算法[6]是以中粒度循环级并行为基础进行的。在对程序进行分析时,首先要分析过程内的数组是否存在一致性划分,即数组在过程内有唯一分布且不存在数组重排通信。数据一致性分解虽然可以最大限度地减少由重排引起的通信,但由于很多程序中数组找不到一致性分布方式,不能并行执行,并行效率低,使用的程序范围很小,实际应用中价值小。能不能设计一种算法综合考虑通信开销和并行效率两方面因素,在进行数据和计算分解时允许存在一定的数据重排通信,即数组在过程内可以有多种分布方式。程序执行时,当分布方式发生变化,数组则进行一次重排通信,即在算法实现中综合考虑通信开销与并行度之间的关系,使得算法所处理的程序能在有一定通信开销的情况下并行执行,从而使能处理的程序范围增加。??允许数据重排的划分方法是指数据的分布方式在各个循环嵌套之间是可变的,重排划分实现的基础是数据一致性分解算法。在允许重排的划分中,首先将根据数组和循环嵌套之间的关系建立通信图。通信图中的顶点向量表示循环嵌套;边表示两个循环嵌套之间是否有数组可达。有数据可达则存在一条边;否则不存在边。边的权值为数组可达的通信开销。??2...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?