基于GPU的并行最小生成树算法的设计与实现

合集下载

最小生成树算法实验报告

最小生成树算法实验报告

最小生成树算法实验报告【实验报告】最小生成树算法实验一、实验目的本次实验旨在研究最小生成树算法,通过对比不同的算法,并对实验结果进行分析,探索最小生成树算法的优劣势和适应场景。

二、实验过程1.算法介绍本次实验中我们将使用两种最小生成树算法:普里姆算法和克鲁斯卡尔算法。

- 普里姆算法(Prim算法):从一个顶点开始,不断在剩下的顶点中选择到当前已有的最小生成树的距离最小的边,将该边的另一个顶点加入树中,直到所有的顶点都加入树中。

- 克鲁斯卡尔算法(Kruskal算法):首先将所有边按照权值从小到大进行排序,然后以最小权值的边开始,依次选择权值最小且不会形成环路的边,直到找到n-1条边为止,其中n为顶点数。

2.实验步骤首先,我们使用Python语言实现了普里姆算法和克鲁斯卡尔算法。

然后,我们构造了一些测试用例,包括不同规模的图和不同权值分布的图。

最后,我们对实验结果进行对比分析。

三、实验结果1.测试用例设计我们设计了三个测试用例,分别为小规模图、中规模图和大规模图,具体如下:-小规模图:顶点数为5的图,权值随机分布。

-中规模图:顶点数为50的图,权值随机分布。

-大规模图:顶点数为100的图,权值随机分布。

2.实验结果分析我们的实验结果如下表所示:算法,小规模图,中规模图,大规模图:-------:,:------:,:------:,:------:普里姆算法,13,455,703从实验结果可以看出,对于小规模图和中规模图,普里姆算法的运行时间明显低于克鲁斯卡尔算法。

但是对于大规模图,克鲁斯卡尔算法的运行时间与普里姆算法的运行时间差距不大,甚至略小于普里姆算法。

这是因为克鲁斯卡尔算法中排序边的时间复杂度为O(ElogE),而普里姆算法中筛选最小距离的边的时间复杂度为O(V^2)。

综上所述,普里姆算法适用于较小规模的图,而克鲁斯卡尔算法适用于较大规模的图。

四、实验总结本次实验研究了最小生成树算法,通过对比实验结果,我们发现不同算法在不同规模的图上的表现有所差异。

最小生成树算法详解

最小生成树算法详解
问题描述
Kruskal算法应用案例
问题描述
最小生成树问题的求解算法除了Prim算法和Kruskal算法之外,还有基于动态规划的算法、基于回溯的算法、基于分治的算法等。
应用场景
例如,在计算几何中,可以通过基于动态规划的算法求解最小包围矩形、最小包围圆、最小包围球等问题;在数值计算中,可以通过基于回溯的算法求解一元高次方程的根等。
其他算法比较与择优
Kruskal算法
Prim算法
Boruvka算法
各算法优缺点比较
根据实际应用场景选择算法
03
Boruvka算法
时间复杂度为O(ElogE),其中E为边数,空间复杂度为O(E)。
各算法时间复杂度与空间复杂度比较
01
Kruskal算法
时间复杂度为O(ElogE),其中E为边数,空间复杂度为O(E)。
时间复杂度:Prim算法的时间复杂度为O(ElogE),其中E为边的数量。
Prim算法
总结词:Kruskal算法是另一种常用的最小生成树算法,其核心思想是通过将所有的边按照权值大小从小到大排序,然后依次选择每条边,如果这条边连接的两个顶点在已经生成的树中不构成环路,则将这条边加入到树中。详细描述:Kruskal算法的基本步骤如下将所有的边按照权值大小从小到大排序。初始化一颗空树作为生成的树的初始状态。从第一条边开始,遍历每条边,如果这条边连接的两个顶点在已经生成的树中不构成环路,则将这条边加入到树中。重复步骤3,直到所有的边都被遍历过。生成的树即为最小生成树。时间复杂度:Kruskal算法的时间复杂度为O(ElogE),其中E为边的数量。
详细描述:Prim算法的基本步骤如下
1. 从一个任意顶点开始,将该顶点加入到已经访问过的顶点集合中。

基于GPU的高性能并行算法研究共3篇

基于GPU的高性能并行算法研究共3篇

基于GPU的高性能并行算法研究共3篇基于GPU的高性能并行算法研究1基于GPU的高性能并行算法研究随着计算机技术的不断发展和GPU的逐渐普及,基于GPU的高性能并行计算已经成为了当前研究的热点之一。

作为现代计算机中的重要组成部分,GPU为我们提供了强大的并行计算能力,能够处理大规模数据,并且具有更快的计算速度和更低的能源消耗。

因此,研究基于GPU的高性能并行算法已经成为了一个重要的课题。

目前,基于GPU的高性能并行算法主要涵盖了三个方面:并行算法设计、并行程序优化和计算模型设计。

在这些方面的研究中,有一些最新的进展已经取得了令人瞩目的成果。

首先,基于GPU并行算法设计的研究是为了高效地利用GPU在并行计算方面的能力。

GPU上的并行算法采用的是SIMD方式,即对于同一个指令的多个数据进行并行计算。

此法将指令发射和控制逻辑大大简化,极大地提高了计算的效率。

其次,对于并行程序优化,在开发GPU并行算法时,程序员需要选择适当的数据结构,评估算法的并行效率,同时还需要进行负载均衡。

因此,优化GPU上的并行程序非常具有挑战性,并且需要付出更多的支出。

最后,基于GPU的计算模型设计方面的研究包括理论上的基础研究和实践研究。

在基础研究方面,主要包括GPU计算的中心化和分布式算法的研究。

而实践研究则主要针对系统架构设计、调度运行和数据移动等方面。

在GPU的应用方面,许多领域都能够受到GPU并行算法的帮助,例如大规模数据处理、图像处理、计算流体力学、生物学建模和量子计算等。

其中,GPU并行算法在深度学习、计算机视觉和自然语言处理等方面展现出了巨大的优势。

总结一下,基于GPU的高性能并行算法研究引发了越来越广泛的关注,持续推进了GPU并行算法的开发。

这项研究已经在广泛的领域中应用,特别是在科学计算领域、媒体和图形、人工智能领域中。

期待这一领域能够在未来不断发展,为我们带来更多的新机遇和发现综上所述,GPU并行算法作为一种高效、可扩展的计算方式,已经被广泛应用于许多领域中。

图论算法中GPU加速技术的应用分析

图论算法中GPU加速技术的应用分析

CAIXUN财讯-70- 图论算法中GPU加速技术的应用分析 □曲靖师范学院信息工程学院 杜衡吉 / 文数学与计算机科学领域,积极的对各种高效的图算法进行设计是十分重要的内容。

就目前的实际情况来看,算法相关理论经过一点时期的发展,已经较为程度和丰富。

但同时,也面对一定的发展平台,积极的开发并行的图算法已经成为摆在研究人员面前的重要课题。

考虑到传统CPU在数据处理方面所受的限制,GPU运算处理器开始被逐渐应用于研究之中。

文章从GPU 与传统并行计算架构的差异入手,分析GPU加速技术在图论算法中的应用效果。

图论算法 GPU加速技术最小生成树 应用前言当前,在人们的日常工作和生活中存在着海量的数据,为了更好的进行数据分析,对高性能计算也产生了较大的需求。

而传统的单核计算方式显然已经无法满足现实情况的需求,为此,GPU (图形处理单元)作为具有大量计算核心的众核架构,开始被逐渐应用于各种实际问题之中。

但是,目前关于在GPU 上的图算法,相关的研究还相对较少。

GPU与传统并行计算架构的差异 (1)GPU与分布式集群GPU与分布式集群之间的差异主要体现在通信方式以及计算方式上。

其中,在通信方式上,集群在实现通信的时候,主要借助于互联网或者局域网。

在具体的计算过程中,需要充分重视传输的细节,以免设计方面出现传输限制的问题。

但是,在使用GPU芯片的时候,在对数据等进行传输的时候,采用的是PCI-E接口,不需要对传输细节予以过分的关注,仅需要解决如何对计算内容进行分配等问题即可。

在计算方式上,集群在计算方面采用的是主从模式,通过分割计算的方式来完成相关的计算。

而GPU 则利用Slave来完成计算。

(2)GPU与多核CPUGPU与多核CPU的区别主要体现在架构以及设计目的方面。

在CPU芯片上,在对电路予以应用的时候,大多将其视为逻辑控制或者缓存。

这样一来,也导致计算单元的晶体管数量十分有限。

经过大量的实践也发现,在应用GPU的时候,涉及到的并行指令数量十分有限。

最小生成树克鲁斯卡尔算法

最小生成树克鲁斯卡尔算法

最小生成树克鲁斯卡尔算法
最小生成树克鲁斯卡尔算法是一种基于贪心思想的图论算法,主
要用于解决图的最小生成树问题。

该算法精简高效,在实际应用中广
泛使用。

最小生成树问题是指,在一个带权无向图中,选取一些边,使得
它们组成一棵树,且这棵树的所有边的权值之和最小。

这个问题可以
用克鲁斯卡尔算法来解决。

克鲁斯卡尔算法的思想是,首先将所有边按照权值从小到大排序,依次将每条边加入到已选的边集合中,如果加入该边后形成了环路,
则不选择该边。

最终生成的边集合就是该图的最小生成树。

这个算法的时间复杂度为O(ElogE),其中E为边数。

虽然速度不
如其他复杂度更快的算法,但克鲁斯卡尔算法的代码简洁易懂,并且
适用于边数较小的图,正因为如此,在实际应用中它的使用非常广泛。

在大型计算机网络中,最小生成树算法常用于广域网的拓扑设计
问题。

在城市交通规划中,也可以应用最小生成树算法,来设计更加
合理的交通路线。

需要注意的是,最小生成树仅仅是起到了将所有节点连接起来的
作用,它并不保证任意两个节点之间都有最短路径。

如果需要求解两
点间的最短路径问题,需要使用单源最短路径算法,如Dijkstra算法
和Bellman-Ford算法等。

总之,最小生成树克鲁斯卡尔算法在实际应用中扮演着重要的角色,尤其在计算机网络和城市规划领域的应用非常广泛。

学习并掌握这个算法,对于解决实际问题具有重要的指导意义。

最小生成树算法详解

最小生成树算法详解

最小生成树算法详解最小生成树(Minimum Spanning Tree,简称MST)是图论中的一个经典问题,它是指在一个加权连通图中找出一棵包含所有顶点且边权值之和最小的树。

在解决实际问题中,最小生成树算法被广泛应用于网络规划、电力传输、城市道路建设等领域。

本文将详细介绍最小生成树算法的原理及常见的两种算法:Prim算法和Kruskal算法。

一、最小生成树算法原理最小生成树算法的核心思想是贪心算法。

其基本原理是从图的某个顶点开始,逐步选取当前顶点对应的边中权值最小的边,并确保选取的边不会构成环,直到所有顶点都被连接为止。

具体实现最小生成树算法的方法有多种,两种常见的算法是Prim 算法和Kruskal算法。

二、Prim算法Prim算法是一种基于顶点的贪心算法。

它从任意一个顶点开始,逐渐扩展生成树的规模,直到生成整个最小生成树。

算法的具体步骤如下:1. 初始化一个空的生成树集合和一个空的顶点集合,将任意一个顶点加入到顶点集合中。

2. 从顶点集合中选择一个顶点,将其加入到生成树集合中。

3. 以生成树集合中的顶点为起点,寻找与之相邻的顶点中权值最小的边,并将该边与对应的顶点加入到最小生成树中。

4. 重复第3步,直到生成树中包含所有顶点。

Prim算法是一种典型的贪心算法,其时间复杂度为O(V^2),其中V为顶点数。

三、Kruskal算法Kruskal算法是一种基于边的贪心算法。

它首先将所有边按照权值从小到大进行排序,然后从小到大依次选择边,判断选取的边是否与已选取的边构成环,若不构成环,则将该边加入到最小生成树中。

算法的具体步骤如下:1. 初始化一个空的生成树集合。

2. 将图中的所有边按照权值进行排序。

3. 依次选择权值最小的边,判断其两个顶点是否属于同一个连通分量,若不属于,则将该边加入到最小生成树中。

4. 重复第3步,直到最小生成树中包含所有顶点。

Kruskal算法通过并查集来判断两个顶点是否属于同一个连通分量,从而避免形成环。

最小生成树算法

最小生成树算法

最小生成树算法最小生成树算法是图论中的重要算法之一,用于找到一个连通图的最小生成树。

最小生成树是图中所有节点相连的一棵树,并且边权重的总和最小。

1. 概述最小生成树算法有多种实现方式,其中最常用的两种是Prim算法和Kruskal算法。

这两种算法都基于贪心算法的思想,通过每一步选择边的方式来构建最小生成树。

2. Prim算法Prim算法是基于节点的思想。

算法首先选择一个起始节点,然后寻找与该节点相连的边中权重最小的边,并将该边加入生成树中。

然后继续选择下一个节点,重复上述步骤,直到所有的节点都被访问过。

3. Kruskal算法Kruskal算法是基于边的思想。

算法首先将所有的边按照权重进行排序,然后依次选择权重最小的边。

如果选择该边不会形成环路,则将该边加入生成树中。

直到生成树中包含了所有的节点或者边已经用完。

4. 最小生成树的应用最小生成树算法在实际应用中有广泛的应用,如网络设计、电力传输、电路布局等。

通过构建最小生成树,可以在保证通信或者输电能力的基础上,降低网络或者电力的建设和维护成本。

5. 算法复杂度分析Prim算法和Kruskal算法的时间复杂度都为O(ElogE),其中E为边的数量。

这是因为在算法中需要对边进行排序操作,排序的时间复杂度为O(ElogE)。

另外,Prim算法使用了优先队列来选择最小权重的边,优先队列的插入和删除操作的时间复杂度为O(logE),一共需要进行E次操作。

6. 算法优化在实际应用中,当图的规模很大时,最小生成树算法可能会面临时间和空间的限制。

针对这个问题,可以采用一些优化策略来提升算法的效率。

例如,可以使用并查集来判断是否形成环路,从而提高Kruskal算法的速度。

同时,可以使用其他数据结构来替代优先队列,以减少空间开销。

总结:最小生成树算法是解决连通图的重要算法之一,通过选择边的方式构建最小生成树。

Prim算法和Kruskal算法是两种常用的实现方式。

最小生成树算法在实际应用中有广泛的应用,可以降低网络和电力的建设成本。

基于GPU的Dirichlet算法并行计算设计与实现的开题报告

基于GPU的Dirichlet算法并行计算设计与实现的开题报告

基于GPU的Dirichlet算法并行计算设计与实现的开题报告一、选题背景和意义Dirichlet算法是一种基于贝叶斯公式的主题模型,常用于文本数据的主题分析。

但由于计算量较大,往往需要采用并行计算的方式进行加速运算。

随着GPU硬件性能的逐渐提升,使用GPU进行并行计算已成为一种选项。

针对这一问题,本文考虑基于GPU的Dirichlet算法并行计算设计与实现,旨在提出一种高效的并行计算方案,提高主题分析的计算效率。

二、研究内容1. Dirichlet算法原理和并行计算方法的研究。

对Dirichlet算法的原理和并行计算方法进行研究,分析其优缺点,为后续设计提供基础。

2. 基于GPU的Dirichlet算法并行计算方案设计。

针对Dirichlet算法中的计算瓶颈,提出基于GPU并行计算的方案设计。

主要包括数据分割、计算任务分配、并行计算等方面。

3. 硬件环境搭建和软件实现。

搭建相应的硬件环境和软件实现环境,并实现设计的基于GPU的Dirichlet算法并行计算方案。

4. 性能评测和实验分析。

采用标准数据集和指标,进行性能评测和实验分析,验证方案设计的有效性和可行性。

三、研究目标本文旨在设计一种基于GPU的Dirichlet算法并行计算方案,提高主题分析的计算效率。

具体目标包括:1.对Dirichlet算法的原理和并行计算方法进行研究和分析。

2.设计基于GPU并行计算的方案,提高算法的计算效率。

3.实现设计的基于GPU的Dirichlet算法并行计算方案,并对其进行优化。

4.针对标准数据集进行性能评测和实验分析,验证设计的方案的有效性和可行性。

四、研究方法本文采用如下研究方法:1.文献综述。

对Dirichlet算法和并行计算进行文献综述和分析,为后续设计提供基础。

2.算法设计。

针对Dirichlet算法中的计算瓶颈,提出基于GPU并行计算的方案设计。

3.软件实现。

搭建相应的硬件环境和软件实现环境,并实现设计的基于GPU的Dirichlet算法并行计算方案。

基于GPU的并行最小生成树算法的设计与实现

基于GPU的并行最小生成树算法的设计与实现

基于GPU的并行最小生成树算法的设计与实现郭绍忠;王伟;王磊【期刊名称】《计算机应用研究》【年(卷),期】2011(28)5【摘要】Considering current parallel Prim' s MST algorithms' limited speedup, based on analyzing existing parallel MST algorithms, this paper used compress adjacency list graph representation suited to GPU architecture, developed GPU-based minreduction data parallel primitive, and designed parallel Prim' s MST algorithm on NVIDIA GPU.The algorithm shortened the finding time via using primitives in the key step so achieved higher efficiency.Experimental results show that it obtains evident performance improvement over the traditional CPU implementation and non-primitives GPU implementation.%针对目前并行Prim最小生成树算法效率不高的问题,在分析现有并行Prim算法的基础上,提出了适于GPU架构的压缩邻接表图表示形式,开发了基于GPU的min-reduction数据并行原语,在NVIDIA GPU上设计并实现了基于Prim算法思想的并行最小生成树算法.该算法通过使用原语缩短关键步骤的查找时间,从而获得较高效率.实验表明,相对于传统CPU实现算法和不使用原语的算法,该算法具有较明显的性能优势.【总页数】4页(P1682-1684,1702)【作者】郭绍忠;王伟;王磊【作者单位】解放军信息工程大学,信息工程学院,郑州,450002;解放军信息工程大学,信息工程学院,郑州,450002;解放军信息工程大学,信息工程学院,郑州,450002【正文语种】中文【中图分类】TP311.52【相关文献】1.基于GPU的Viterbi并行解码算法的设计与实现 [J], 李俊鹏;余心乐;徐伟掌2.基于GPU的遥感图像IHS小波融合并行算法设计与实现 [J], 徐如林;周海芳;姜晶菲3.一种基于GPU集群的深度优先并行算法设计与实现 [J], 余莹;李肯立;郑光勇4.基于GPU的并行化Apriori算法的设计与实现 [J], 唐家维;王晓峰5.基于GPU的Bor?vka最小生成树改进算法 [J], 吴永存;刘成安;印茂伟因版权原因,仅展示原文概要,查看原文内容请购买。

最小生成树算法及其应用word资料12页

最小生成树算法及其应用word资料12页

最小生成树算法及其应用1.基础篇1.1定义在电路设计中,常常需要把一些电子元件的插脚用电线连接起来。

如果每根电线连接两个插脚,把所有n个插脚连接起来,只要用n-1根电线就可以了。

在所有的连接方案中,我们通常对电线总长度最小的连接方案感兴趣。

把问题转化为图论模型就是:一个无向连通图G=(V,E),V是插脚的集合,E是插脚两两之间所有可能的连接的集合。

给每条边(u,v)一个权值w(u,v),表示连接它们所需的电线长度。

我们的目标就是找到一个无环的边集T,连接其中所有的点且使总权值最小。

总权值既然T是连接所有点的无环边集,它一定是一棵树。

因为这棵树是从图G 中生成出来的,我们把它叫做生成树。

如果一棵生成树在所有生成树中总权值最小,我们就把它称作最小生成树。

1.2求最小生成树的一般算法解决最小生成树问题有没有一般的方法呢?下面我们就介绍一种贪心算法。

该算法设置了集合A,该集合一直是某最小生成树的子集。

算法执行的每一步,都要决策是否把边(u,v)添加到集合A中,能够添加的条件是保证A∪{(u,v)}仍然是最小生成树的子集。

我们称像(u,v)这样的边为A的安全边,或称这样的边对集合A是安全的。

求最小生成树的一般算法流程如下:GENERIC-MST(G,w)1.A←Ф2.while A没有形成一棵生成树3.do找出A的一条安全边(u,v)4.A←A∪{(u,v)}5.return A一开始A为Ф,显然满足最小生成树子集的条件。

之后,每一次循环都把一条A的安全边加入A中,A依然是最小生成树。

本节的余下部分将提出一条确认安全边的规则(定理1),下一节将具体讨论运用这一规则寻找安全边的两个有效的算法。

图1一个图的割(S,V-S)首先定义几个概念。

有向图G=(V,E)的割(S,V-S)是V的一个分划。

当一条边(u,v)∈E的一个端点属于S而另一端点属于V-S,我们说边(u,v)通过割(S,V-S)。

若集合A中没有边通过割,就说割不妨碍集合A。

基于完全图的求解最小生成树算法

基于完全图的求解最小生成树算法

基于完全图的求解最小生成树算法1. 引言最小生成树是图论中的一个重要问题,它涉及到如何在一个无向连通图中找到一棵生成树,使得所有边的权值之和最小。

经典的 Kruskal 算法和 Prim 算法是目前最著名的两种求解最小生成树问题的算法。

而本文将介绍一种基于完全图的求解最小生成树算法。

2. 算法原理基于完全图的求解最小生成树算法,其本质是一个贪心算法。

它的实现过程如下:1)给定一个无向完全图 G。

2)初始化:将 G 中所有边标记为未选中状态,并选取一个顶点作为起点。

3)在剩余的边中选择权值最小的边 e,如果加入 e 后出现了环,则选择下一条边。

否则,将 e 加入生成树,并将 e 标记为已选中状态。

4)重复步骤 3,直到所有顶点都被访问。

3. 实现代码如下:``` pythondef min_spanning_tree(G):"""基于完全图的求解最小生成树算法:param G: 无向完全图,使用邻接矩阵保存,G[i][j] 表示顶点i 与 j 之间的边的权值:return: 最小生成树的邻接矩阵"""INF = float('inf') # 定义正无穷n = len(G) # 顶点数MST = [[INF] * n for i in range(n)] # 最小生成树邻接矩阵visited = [0] * n # 标记顶点是否访问过visited[0] = 1 # 选取第一个顶点for i in range(n-1): # n-1 条边min_distance = INFx, y = -1, -1for j in range(n):if visited[j]:for k in range(n):if not visited[k] and G[j][k] < min_distance:min_distance = G[j][k]x, y = j, kif x != -1 and y != -1:visited[y] = 1 # 标记已经访问的顶点MST[x][y] = G[x][y]MST[y][x] = G[x][y] # 更新最小生成树中的边return MST```4. 时间复杂度由于我们要对完全图的所有边进行排序,因此时间复杂度为O(n^2)。

基于最小生成树的K-均值算法设计与并行化实现

基于最小生成树的K-均值算法设计与并行化实现

基于最小生成树的K-均值算法设计与并行化实现李俊;李玲娟【期刊名称】《南京邮电大学学报(自然科学版)》【年(卷),期】2017(037)005【摘要】随着数据处理规模的不断扩大,对算法执行效率的要求不断提高.Spark作为基于内存计算的分布式并行化框架得到了前所未有的关注和广泛应用.为了提高聚类精度和效率,研究了K-means算法的改进及其在Spark平台上的并行化.针对K-means初始聚类中心选取的随机性问题,设计了基于最小生成树的K-means算法MST-K,该算法采用最小生成树对原始结点进行初始划分,减轻初始聚类中心随机选取对聚类结果的影响;采用余弦相似度公式来避免由于各属性衡量单位的差异性而导致的“相似不相同”问题.针对MST-K算法的执行效率,设计了将之在Spark 平台上分布式并行化实现的方法.在Spark上并行化运行以及与Spark MLlib中提供的K-means进行准确性对比的实验结果表明:MST-K算法在Spark平台上具有良好的时效性和聚类精度.【总页数】6页(P81-86)【作者】李俊;李玲娟【作者单位】南京邮电大学计算机学院,江苏南京210023;南京邮电大学计算机学院,江苏南京210023【正文语种】中文【中图分类】TP311【相关文献】1.基于统计均值的图像隐写分析算法设计与实现 [J], 葛祥友2.一种基于快速k-近邻的最小生成树离群检测方法 [J], 朱利;邱媛媛;于帅;原盛3.基于K-均值和K-中心点算法的大数据集分析 [J], 郭晨晨;朱红康4.基于高斯混合模型和K-均值聚类算法的RBF神经网络实现男女声转换 [J], 袁志明5.基于NUMA MPSoC的FFT并行化算法设计及实现 [J], 张冰;杜高明;李丽;杨盛光因版权原因,仅展示原文概要,查看原文内容请购买。

基于GPU的Bor?vka最小生成树改进算法

基于GPU的Bor?vka最小生成树改进算法

基于GPU的Bor?vka最小生成树改进算法
吴永存;刘成安;印茂伟
【期刊名称】《科技通报》
【年(卷),期】2017(33)2
【摘要】为了提高Bor?vka最小生成树算法的效率,本文基于NVIDIA GPU提出
一种并行Bor?vka算法,设计了适用于GPU通用并行计算架构的邻接表图存储方式,通过避免Bor?vka算法每次迭代后的破圈操作以及合并超节点后的数据重组操作,并将算法中具有并行特性的部分移植到GPU并行执行,从而提高了算法的效率。

实验表明,相比于CPU版Bor?vka算法,该算法具有较为明显的加速效果。

【总页数】5页(P95-99)
【关键词】Boruvka;最小生成树;GPU;邻接表
【作者】吴永存;刘成安;印茂伟
【作者单位】西南科技大学国防科技学院,四川绵阳621010
【正文语种】中文
【中图分类】TP311.52
【相关文献】
1.基于最小生成树算法和改进遗传算法的配电网络综合优化 [J], 王磊;庄园
2.基于分数阶变换和改进最小生成树的图像配准算法 [J], 韩毅;赵凯;周晏
3.基于改进遗传算法的最小生成树算法 [J], 刘志成;钱建刚
4.基于GPU的并行最小生成树算法的设计与实现 [J], 郭绍忠;王伟;王磊
5.基于改进Census变换与最小生成树的立体匹配算法 [J], 于修成;宋燕;李航因版权原因,仅展示原文概要,查看原文内容请购买。

基于GPU的并行八叉树生成算法

基于GPU的并行八叉树生成算法

基于GPU的并行八叉树生成算法
王吉强;贾世宇
【期刊名称】《青岛大学学报(自然科学版)》
【年(卷),期】2018(031)004
【摘要】提出了一种新颖的完全在GPU端以并行方式构造八叉树的算法.克服了以往GPU八叉树生成算法难以构建结点间的邻接关系以及对应用领域的局限性等困难,适用于在GPU中对散乱点云数据、三角网数据以及离散数据场数据构建八叉树.该方法以紧密排列的方式线性存储各层八叉树结点同时避免存储空结点信息,有效节约了存储空间并且提高了逐层并行遍历八叉树的效率.与传统的CPU单线程递归分割构造八叉树的算法相比较,速度可以提高一个数量级.
【总页数】7页(P69-75)
【作者】王吉强;贾世宇
【作者单位】青岛大学计算机科学技术学院,青岛266071;青岛大学计算机科学技术学院,青岛266071
【正文语种】中文
【中图分类】TP391.41
【相关文献】
1.一种基于GPU实现的自适应八叉树纹理绘画算法 [J], 李航;党岗;程志全;金士尧
2.Voronoi图栅格生成算法GPU并行实现 [J], 屠文森;汪佳佳
3.基于GPU的大尺度网络零模型分组生成并行算法 [J], 李欢;卢罡;郭俊霞
4.基于GPU的并行最小生成树算法的设计与实现 [J], 郭绍忠;王伟;王磊
5.基于射线穿透法的GPU并行阶梯型有限差分网格生成算法 [J], 李平; 麻铁昌; 许香照; 马天宝
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

grtms hsp p ru e o rs dae c s ga hrpee tt ns i dt U ac i cue e eo e U-a e n oi h ,ti a e sdc mpesa jcn yl t rp e rsnai ut oGP rht tr ,d v lp dGP b s dm/ — i o e e
郭绍忠 , 王 伟, 王 磊
( 解放 军信 息工程 大学 信 息工程 学院 ,郑州 4 0 0 ) 50 2 摘 要 :针 对 目前 并行 Pi r m最 小生成树算 法效 率不 高的问题 , 分析现 有并行 Pi 算法 的基 础上 , 出 了适 于 在 r m 提
G U 架构 的压缩邻接 表 图表 示形 式 , P 开发 了基 于 G U的 m nrd c o 据 并行原 语 , N I I P P i— u t n数 e i 在 V D A G U上设 计 并 实现 了基 于 P m 算法思 想的并行 最小 生成 树算 法 。该算 法通 过使 用原语 缩短 关键 步骤 的查找 时间 , 而获得 i r 从
较 高效率 。实验表 明 , 对于传统 C U 实现 算法和 不使 用原语 的算 法 , 算法具 有较 明显的性 能优 势 。 相 P 该
关 键词 :图形处理 器 ;图论 ;最小 生成 树 ; r Pi m算 法 ; 据并行 原语 数
中图分类号 :T 3 15 P 1. 2 文献标 志码 :A 文章编 号 :10 —6 5 2 1 )5 18 - 3 0 13 9 ( 0 1 0 — 6 2 0
最小生成树 ( T 是 图论 中的一个 基本概念 , MS ) 定义为 : 给 定一个具有权值映射关系 W: 一 的无 向图 G=( E)求 一 E , ,
1 相关 工作
1 1 并 行 P m 算 法 . n
个具有 I :I I 关 系的bs r c : Co s d rng c r e tp r le i ’ S l o ih ta t n i e i u r n a a l lPrm S M T a g rt ms’lmie p e up,b s d o n l z n x s i a a l l MST l i tdse d a e n a ay i ge it ng p r le a—
Ke o d :G U; rp i ter ; nm m s a nn e MS ) P i Sa o tm; a aa e p m t e y w r s P ga hc h oy mi u n igt e( T ; r i p r m’ l r h d t p r l r iv gi a ll i i
第 2 卷 第 5期 8
21 0 1年 5月
计 算 机 应 用 研 究
Ap lcto s ac fCo ues piain Re e rh o mp tr
V l2 . 0 - 8 No 5
Ma 2 1 v 0 1
基 于 GP 的 并 行 最 小 生成 树 算 法 的 设 计 与 实 现 U
r d c in d t r le rmiie.a d e ine a al lP i ’ T lo ihm n e u to a apa allp i tv n d sg d p r le rm s MS ag rt o NVI A DI GPU. Th lo ih s o e e h e ag rt m h r n d te t
∑ w e 最 小 化 。MS 问题 在 网 络 规 划 、 程 问 题 及 V S () T 旅 LI
布局等许 多领域发挥重要作用 。蹦 m算法是最 常用 的 MS T算
法之 _ , 目前对 Pi 法 的 研 究 和 使用 以 串行 为 主 , 行 P m r m算 并 i r
i d n i i sn i t si h e t p s c i v d g e f i n y fn i g t eva u i gprmiie n t e k y se o a h e e hih re ce c . Ex e me a e u t h w h ti b an vde m v i p r ntlr s lss o t a to t ise i nt i p ro ma c mprv me to e h r dto lCPU mp e n ain a d n R・rmiie e r n e i o e n v rt e ta iina f i l me tto n O p i tv sGPU mplme tto i e na in.
GU h o z o g O S a —h n ,W ANG We ,W ANG L i i e
(nt u nom t nE g nei P A I om t nE g nei n es Z e gh u4 0 0 ,C ia Is t eo f r ai n i r g, L n r ai n i r g U i r 0 , h n z o 5 0 2 hn ) i t fI o e n f o e n v i
d i1 .9 9 ji n 10 -6 5 2 1 .5 0 5 o:0 3 6 /.s .0 1 9 .0 0 . 2 s 3 1
De in a d i l me tto fGPU— a e a a ll sg n mp e n a i n o b sdp rl e
mii n mum pa i r e a g rt s nn ng te l o ihm
相关文档
最新文档