首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 46 毫秒
1.
基于指针数组的数据划分模式   总被引:1,自引:0,他引:1  
数据划分是分布主存系统中并行编译的关键技术,它以数组和包含这些数组的嵌套循环为研究对象,以提高数据局部性和挖掘计算并行性为根本目的。传统数据划分模式不适合指向数组的指针数组的数据划分,论文提出了解决该类指针数组数据划分的划分模式,文中称为数组向量的数据划分。分析其数据引用的特性,通过选取代表元,给出数据划分的策略,弥补了现有数据划分研究的不足。  相似文献   

2.
3.
基于数据空间融合的全局计算与数据划分方法   总被引:2,自引:1,他引:2  
夏军  杨学军 《软件学报》2004,15(9):1311-1327
计算与数据划分问题是影响并行程序在分布主存多处理机中执行性能的重要因素,也是并行编译优化的重点.针对该问题,提出了一套关于数据空间融合的理论框架,并基于该框架给出了一种有效的全局计算与数据划分方法,用于分布主存计算环境中的计算与数据划分问题的求解.该方法能够尽量开发计算空间的并行度,利用数据融合技术优化数据分布,并能搜寻优化的全局计算与数据划分.该方法还能很自然地与数据复制以及偏移常量的对准结合在一起,从而使得数据通信量尽可能地小.实验结果表明了所提出方法的有效性.  相似文献   

4.
丁锐  赵荣彩  韩林 《软件学报》2013,24(12):2843-2858
划分是一种自动分配计算和数据到各个处理器的编译技术,是分布存储结构下并行编译的核心问题.以往的划分研究较少从生命期的角度考虑数据分解问题,分解在数组的不同生命期中不一致时会产生冗余通信.为解决上述问题,提出了一种数据分解算法,通过定义-引用图来表示数组的数据流信息,并使用分解映射表为数组不同的生命期建立各自的数据分解.对矩阵求逆等9 个实际用例的实验结果表明,与以往不区分生命期的划分研究相比,使用所提算法能够在寻找数据分解时对并行收益做出更准确的评估,减少了通信冗余,从而提升了自动生成的并行代码的加速比.  相似文献   

5.
一种数据并行中的群通信优化策略   总被引:1,自引:0,他引:1  
群通信是影响大规模数据并行系统效率的关键因素,其主要发生在程序不同阶段间的数组重分布与循环划分后的数组重映射这两种情况.在一次通信中显著影响群通信效率常被忽视的因素是消息冲突和消息长度的不一致.因为它们会导致进程间大量的空闲等待时间.然而以前的研究要么不能完全避免消息冲突,要么针对某些特殊情况.对此,提出了在数组分布为Block_Cyclic(k)情况下的一种更具有普遍适用性的通信调度策略CSS.通过证明表明该策略能使一个通信步内的消息互不冲突且消息长度尽量相等.从而最小化通信调度生成时间和实际通信时间.最后的测试结果也表明,与传统的通信优化算法和MPI_Alltoallv实现相比,CSS策略使得通信效率得以明显提高.  相似文献   

6.
对于分布内存体系结构的并行计算机而言,如何对计算和数据进行合理划分以增加数据本地化减少处理器间的通信是提高其并行性能的关键,但在数据划分过程中,重分布通信有时不可避免,如何进行合理的数据和计算划分以减少通信并最大限度的利用程序的并行性是并行编译中的一个重要问题。该文主要讨论了一种支持数据重分布的自动进行计算和数据划分的算法。  相似文献   

7.
有效的数组私有化方法:相关-覆盖方法   总被引:5,自引:0,他引:5  
数组私有化是并行化编译中的重要技术,该方针对现有数级私有化方法的不足,分析了数组私有化的本质,提出了一个数组私有方法:相关-覆盖方法。它将相关性分析技术和数据覆盖技术有机地结合在一起,具有了执行效率高、处理能力强、独立于数据表示的特点。  相似文献   

8.
并行编译中一种线性数据和计算划分算法   总被引:1,自引:1,他引:0       下载免费PDF全文
对于高性能并行计算机而言,如何找到一种好的计算和数据划分,对数据和计算进行合理划分,增加数据本地化来减少处理器间的通信是提高其并行性能的关键。该文讨论了一种线性的自动进行无数据重组的计算和数据划分算法。  相似文献   

9.
孙剑  王玉亭 《现代计算机》2007,(4):102-104,112
与静态数组动相比,动态数组的特点在于它可以根据程序运行时状态的不同而随时改变容量,因此动态数组在程序设计中的使用十分广泛.介绍一个高性能动态数组的实现方法,实验结果表明,该方法实现的动态数组可以大幅度的提高程序的效率.  相似文献   

10.
一种基于线性代数的计算和数据自动分解算法   总被引:1,自引:0,他引:1  
在针对分布内存体系结构的并行识别技术中,如何对计算和数据进行合理分解,以增加数据引用的本地化、减少处理器间的通信是提高并行程序性能的关键。本文通过对Anderson-lam分解算法完整性的补充,给出了一种可实现无通信的计算划分和数据分布算法,并阐述了对该算法在工程实践中的一些优化考虑。  相似文献   

11.
由于计算机访问本地存储器的速度远远快于通过网络访问异地计算机存储器的速度,因此,在分布式存储环境中,如何对程序中引用的数据进行合理的分布,从而达到在本地进行计算时只需访问存储在本地的数据(即无通信的数据分布)的目的,已成为提高并行计算速度的关键问题,本文主要讨论如何在数组下标表达式为线性的条件下,对一种种锘于线性代数中超平面概念的数组线性划分技术进行扩充,并给出了完整的数据划式计算算法。  相似文献   

12.
尽管当今的磁盘等外存储设备容量增加得很快,但还是无法满足用户应用程序的需要;在性能上,外存储设备已经成为计算机系统的瓶颈;为此,在集群环境下,将分布式的外设构成动态虚拟盘阵系统是一种较好的解决方案,而数据分布算法是动态虚拟研究的一项重要内容。也就是说,采用优化的数据分布算法,使得盘阵的性能和容量随盘阵的扩展而扩展。研究的主要工作是综述以往对动态盘阵数据分布算法,并对以往SCADDAR算法进行了扩充,提出了D/H(Double/Halve)数据分布算法。  相似文献   

13.
Minimizing data communication over processors is the key to compile programs for distributed memory multicomputers. In this paper, we propose new data partition and alignment techniques for partitioning and aligning data arrays with a program in a way of minimizing communication over processors. We use skewed alignment instead of the dimension-ordered alignment techniques to align data arrays. By developing the skewed scheme, we can solve more complex programs with minimized data communication than that of the dimension-ordered scheme. Finally, we compare the proposed scheme with the dimension-ordered alignment one by experimental results. The experimental results show that our proposed scheme has more opportunities to align data arrays such that data communications over processors can be minimized.  相似文献   

14.
Double‐array structures have been widely used to implement dictionaries with string keys. Although the space efficiency of dynamic double‐array dictionaries tends to decrease with key updates, we can still maintain high efficiency using existing methods. However, these methods have practical problems of time and functionality. This paper presents several efficient rearrangement methods to solve these problems. Through experiments using real‐world datasets, we demonstrate that the proposed rearrangement methods are much more practical than existing methods.  相似文献   

15.
余愚  邓志平 《计算机应用》2007,27(6):1521-1523
系统可靠性与维修性仿真属于离散事件仿真的范畴。针对可靠性与维修性仿真过程中可能涉及大量的随机变量的问题,论述了利用动态数据结构提高仿真运行的效率和扩大仿真解题规模的可能性。并以Turbo C为背景,讨论了动态数组的建立、动态内存的管理以及动态数组的使用方法,给出了动态数组在系统可靠性与维修性仿真中的应用。  相似文献   

16.
全局部分重复计算划分   总被引:1,自引:0,他引:1  
并行化编译器常常采用拥有者计算规则来进行计算划分,为了提高性能和可扩展性,后来引入了部分重复计算划分的概念.这是一种针对并行程序节点间局部性的重要优化方法.以前的部分重复计算划分局限于一个循环套的范围,因此新提出了全局部分重复计算划分的问题,给出一个简化的性能模型和一个基于整数线性规划的全局部分重复计算划分框架.实验结果表明,其结果显著优于局限于单个循环套的部分重复计算划分,比以前提出的启发式方法有更好的适应性.  相似文献   

17.
针对大规模项目资源库中项目资源信息无序而导致无法准确快速找出项目资源库中所需资源的问题,提出了基于MapReduce的并行化模糊聚类划分算法。该算法首先抽象原始项目资源特征属性并标准化;其次,根据标准化后的特征属性建立项目相似矩阵,运用矩阵分块思想分割矩阵;然后,利用MapReduce技术处理分块矩阵并合并结果;最后,运用阈值评判划分成若干个有序的项目组。与K-means算法和遗传算法的对比实验结果证明:该算法具有较高的准确率和查全率,并且在大规模数据计算时能够得到较高的加速比,可以有效准确地划分项目资源。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号