Using Coloured Petri Nets for design of parallel raytracing environment
本文介绍了作者所在单位研制的虚拟现实系统PROLAND的并行光线跟踪部分。它描述了光线跟踪部分的一个实际实现,并介绍了一个有色Petri网模型的实现。该模型是用于评估的实施,通过基于仿真的性能分析,也形成了未来改进的基础上,其并行化策略。
2010-03-06 cs.DC
Parallel/distributed implementation of cellular training for generative adversarial neural networks
生成对抗网络(GANs)被广泛用于学习生成模型。GANs由两个网络组成,一个生成器和一个自适应器,它们应用对抗学习来优化它们的参数。本文提出了一种并行/分布式实现的细胞竞争协同进化方法训练两个种群的GANs。提出了一种适用于高性能/超级计算中心的分布式存储并行实现方案。高效的结果报告解决生成的手写数字(MNIST数据集样本)。此外,所提出的实现是能够减少训练时间和规模适当考虑不同的网格大小的训练。
2020-08-03 cs.DC cs.NE
On parallel implementation of a discrete optimization random search algorithm
考虑了一种求解离散优化问题的随机搜索算法。我们概述了该算法的主要组件,然后更详细地描述它。我们展示了如何算法可以在并行计算机系统上实现。给出了算法的串行和并行性能分析,并讨论了解决测试问题的相关结果。
2013-11-12 cs.DC math.OC
Task parallel implementation of a solver for electromagnetic scattering problems
电磁计算,其中的波长是小的相关的几何形状的利益,成为计算上的要求。为了管理诸如飞机电磁散射等实际问题的计算,使用并行计算是必不可少的。在本文中,我们描述了如何求解器的基础上,分层嵌套等效源近似可以实现并行使用基于任务的编程模型。我们表明,从串行实现移动到并行实现的努力是适度的,由于基于任务的编程范式,并在多核系统上实现的性能是优秀的任务大小,取决于方法参数,是足够大的。
2018-01-10 cs.CE cs.DC cs.PF
Assessing the Effectiveness of (Parallel) Branch-and-bound Algorithms
实证研究是评估分支定界算法实现有效性的基础。由于各种原因,这种实现的复杂性使得实证研究变得困难。已经进行了各种尝试,以开发和编纂一套标准的技术,用于评估优化算法及其软件实现,但是,大多数以前的工作一直集中在经典的顺序算法。由于并行计算已成为日益主流,有必要重新审视和现代化这些做法。在本文中,我们提出了一个评估框架的基础上的概念,即\emph{resource consumption}是我们通常所说的“有效性”的实施的核心。所提出的框架仔细区分实现的基线效率,它利用固定资源分配的效率,以及它的可扩展性,效率如何随着资源(通常是额外的计算核心)的添加或删除而变化的度量。效率通常适用于顺序实现,而可伸缩性适用于并行实现。效率和可伸缩性都是决定给定并行实现的整体有效性的重要因素,但提高效率的目标往往与提高可伸缩性的目标不一致。在拟议的框架内,我们审查的挑战,有效的评价,并讨论现有的评估方法的优点和缺点。
2021-04-19 cs.DC
Parallel Delta-Stepping Algorithm for Shared Memory Architectures
我们提出了一个共享内存实现的并行算法,称为增量步进,解决单源最短路径问题的有向和无向图。为了减少同步成本,我们做了一些偏离的算法,并讨论了后果。我们研究的行为,我们的实现小世界和无标度图,以及图形所产生的游戏地图。我们收集多核CPU和英特尔至强融核的性能数据。当在顺序模式下运行时,我们的实现优于Boost Graph Library中的Dijkstra算法在小直径图上的实现。在CPU和协处理器上,我们实现了至少50%并行效率的整体性能。
2017-02-20 cs.DC
Parallel implementation of fast randomized algorithms for the decomposition of low rank matrices
我们分析了并行性能的随机插值分解分解低秩复值高斯随机矩阵高达64 GB。我们选择了Cray XMT超级计算机,因为它提供了一个几乎理想的PRAM模型,允许快速调查并行算法,而不会混淆硬件特性。我们得到,非方阵的性能变得非常好,整体运行时间超过70倍的速度在128个处理器。我们还验证了数值发现的误差范围仍然保持在矩阵的近两个数量级比以前测试的。
2014-04-01 cs.DC
pocl: A Performance-Portable OpenCL Implementation
OpenCL是异构系统并行编程的标准。通用编程标准的好处是显而易见的;多个供应商可以为根据该标准编写的应用程序描述提供支持,从而减少程序移植工作。虽然该标准带来了平台可移植性的明显好处,但性能可移植性方面主要留给程序员。由于多个专有供应商实现具有不同的特性,因此需要优化策略,情况变得更糟。在本文中,我们提出了一个OpenCL的实现,是便携式和性能便携式。它的核心是一个内核编译器,可用于在具有不同并行硬件风格的多个平台上开发OpenCL程序的数据并行。内核编译器被模块化,以执行独立于目标的并行区域的形成与区域的特定于目标的并行映射分开,以支持各种风格的细粒度并行资源,例如子字SIMD扩展、SIMD数据路径和静态多问题。与以前在源级别上工作的类似技术不同,并行区域形成使用LLVM IR及其元数据基础设施来保留数据并行的信息。这些数据可以被后来的通用编译器通道利用,以实现高效的并行化。OpenCL的开源实现也是平台可移植的,使OpenCL能够在广泛的体系结构上运行,无论是已经商业化的还是仍在研究中的。本文介绍了如何实现的可移植性。我们的研究结果表明,大多数基准测试的应用程序使用pocl编译时,速度更快或接近手头的平台上最好的专有OpenCL实现一样快。
2016-11-21 cs.DC
On the Complexity and Parallel Implementation of Hensel's Lemma and Weierstrass Preparation
Hensel引理,结合Weierstrass准备定理的重复应用,允许多元幂级数系数多项式的因式分解。我们提出了这种方法的复杂性分析,并利用这些结果来指导并行实现的负载平衡,同时更新所有因素。特别是,因式分解创建一个流水线,其中第一个因素的度k的项与第二个因素的度k-1的项同时计算,等等。实现挑战是因素之间的计算工作的固有不规则性,正如我们的复杂性分析所揭示的那样。通过并行化Weierstrass制备实现额外的资源利用和负载平衡。实验结果表明,这种混合并行方案的有效性,实现高达9倍的并行加速12个核心。
2021-07-02 cs.DC cs.MS cs.SC
An object oriented parallel finite element scheme for computations of PDEs: Design and implementation
提出了基于面向对象概念的并行有限元算法。此外,所提出的数据结构的设计和实现被用于实现并行几何多重网格方法。在所提出的并行方案中,ParFEMapper和ParFEMapper是数据结构的关键组件。这些类是基于所使用的有限元类型(连续或非连续或不连续)构建的。建议的求解器相比,与开源的直接求解器,MUMPS和PasTiX。此外,并行多重网格求解器的性能进行了分析高达1080处理器。求解器显示了一个非常好的加速到960个处理器和问题的大小必须增加,以保持良好的加速时,处理器的数量进一步增加。因此,并行求解器能够在大规模并行超级计算机上处理大规模问题。所提出的并行有限元算法和多重网格求解器在我们的内部软件包ParMooN中实现。
2016-09-15 cs.DC cs.MS
Parallel Implementation of Lossy Data Compression for Temporal Data Sets
许多科学数据集包含时间维度。这些是在相同的空间位置但不同的时间戳存储信息的数据。一些最大的时间数据集是由并行计算应用程序产生的,例如气候变化和流体动力学的模拟。时态数据集可能非常大,并且在存储位置之间传输需要花费大量时间。使用数据压缩技术,可以更快地传输文件并节省存储空间。NUMARCK是一种用于时间数据集的有损数据压缩算法,它可以学习沿时间维度的元素变化率的新兴分布,并将它们编码到索引表中以简明地表示。本文提出了NUMARCK的并行实现。从气候和天体物理模拟获得的六个数据集进行评估,并行NUMARCK实现了可扩展的加速比高达8788时,运行12800 MPI进程在并行计算机上。我们还比较了两种有损数据压缩算法,ISABELA和ZFP的压缩比。结果表明,NUMARCK比ISABELA和ZFP具有更高的压缩比。
2017-03-07 cs.DC
A parallel pattern for iterative stencil + reduce
我们提倡使用Loop-of-Stencil-Reduce模式来简化异构多核平台上数据并行程序的实现。Loop-of-stencil-reduce足够通用,可以在数据并行和流应用程序中或两者的组合中使用map、reduce、map-reduce、stencil、stencil-reduce,以及更重要的是,它们在循环中的使用。该模式使得在不同的GPU上部署单个模板计算内核成为可能。我们讨论了在FastFlow中实现Loop-of-stencil-reduce,FastFlow是一个基于并行模式的应用程序实现框架。实验来说明使用环的模板减少在开发数据并行内核运行在异构系统上。
2016-09-15 cs.DC
A Fast and Generic GPU-Based Parallel Reduction Implementation
归约运算广泛应用于许多计算问题中。约简包括,给定一个有限的数值元素集,将该集合中的所有元素组合成单个值,为此使用组合器函数。并行归约又是当多个执行单元可用时并发执行的归约操作。目前的工作报告的调查就这个问题,并描绘了一个基于GPU的并行方法为it.Employing技术,如循环展开,持久线程和代数表达式,以避免线程发散,所提出的方法是能够实现2.8倍的加速时相比,卡坦扎罗的工作,使用一个通用的,简单的,易于移植的代码。实验结果表明,该策略在AMD和NVidia的硬件环境下,以及OpenCL和CUDA环境下都能有效地执行。
2017-10-19 cs.DC
Parallel implementation of a vehicle rail dynamical model for multi-core systems
本文提出了一种在多核系统上运行的复杂动态对象模型。研究了车辆轨道单元在垂向纵向平面波动中的多体模型的离散化和数值积分问题。所实现的模型和运动微分方程的解允许估计在具有各种外部影响的系统中发生的基本过程。因此,开发的编程模型可用于执行分析和比较新的车辆设计。关键词:动态模型;多核系统; SMP系统;机车车辆。
2017-02-08 cs.DC
Architecture, implementation and parallelization of the software to search for periodic gravitational wave signals
讨论了用于探测旋转中子星周期性引力波的\sky程序的并行化、设计和可扩展性。该代码基于使用快速傅立叶变换算法的F统计的有效实现。为了分析将于2015年开始运行的先进LIGO和Virgo引力波探测器网络的数据,将需要数亿个CPU小时-因此,利用大规模并行超级计算机潜力的代码是强制性的。我们已经并行化的代码使用消息传递接口标准,实现了一种机制,结合在不同的天空位置和频带的搜索到一个非常可扩展的程序。并行I/O接口用于在将生成的数据写入文件系统时避开瓶颈。这允许开发高度可扩展的计算代码,这将使数据分析在可接受的时间尺度上的大规模。在Cray XE 6系统上对代码进行基准测试,以显示我们的并行化概念的效率,并演示并行扩展到5万个核心。
2014-10-14 astro-ph.HE cs.DC cs.PF
Parallel Implementations of Cellular Automata for Traffic Models
Biham-Middleton-Levine(BML)交通模型是一个简单的二维离散元胞自动机(CA)模型,用于研究交通流中的自组织和相变。从计算的角度来看,BML模型表现出离散CA的通常特征,其中自动机的状态根据取决于每个单元及其邻居的状态的简单规则进行更新。在本文中,我们研究了各种优化的影响,加快CA计算的BML模型作为一个案例研究。特别是,我们描述和分析的影响,依赖于CPU的功能,如多个核心或SIMD指令,并在GPU上的几个并行实现。实验评估提供了定量措施的回报,每种技术的加速方面,一个简单的串行实现。我们的研究结果表明,CPU和GPU实现的BML流量模型之间的性能差距可以通过巧妙地利用所有CPU功能来减少。
2018-04-21 cs.DC
Parallel implementation of a lattice-gauge-theory code: studying quark confinement on PC clusters
我们考虑在PC集群上用MPI实现高性能模拟的并行Monte Carlo代码。我们进行了加速比和效率的测试。为了研究胶子和鬼传播子的红外行为,该程序被用于在非常大的格点体积下纯SU(2)格点规范理论的数值模拟。这个问题与强相互作用物理学中夸克和胶子的禁闭直接相关。
2003-08-08 cs.DC hep-lat
Enabling Dynamic Selection of Implementation Variants in Component-Based Parallel Programming for Heterogeneous Systems
针对异构系统编程需掌握多框架的难题,提出基于组件的COMPAR框架,通过编译器指令扩展与StarPU运行时支持,实现运行时组件实现变体的智能选择,在保障性能的同时简化编程、提升代码复用性。
2023-11-06 cs.DC cs.PL
pSTL-Bench: A Micro-Benchmark Suite for Assessing Scalability of C++ Parallel STL Implementations
提出pSTL-Bench微基准测试套件,用于评估C++并行STL实现的可扩展性,并在多核CPU和GPU上对比多种实现,发现显著性能差异。
2024-02-09 cs.DC cs.PF cs.PL
On the Implementation of an Or-Parallel Prolog System for Clusters of Multicores
如今,集群的多核正在成为常态,虽然,许多或并行Prolog系统已经在过去开发,据我们所知,他们都不是专门设计来探索共享和分布式存储器架构的结合。在最近的工作中,我们提出了一种新的计算模型专门设计的这种组合,它引入了一个分层模型,两个调度级别,一个工人共享内存资源,我们命名为一个团队的工人,另一个团队的工人(不共享内存资源)。在这项工作中,我们提出了这样的模型的第一个实现,我们恢复和扩展的YapOr系统,利用或并行工作团队之间。我们还提出了一套新的内置谓词,构成语法与我们的平台或并行引擎进行交互。实验结果表明,我们的实现是能够提高加速比,因为我们增加了每个团队的工人的数量,从而利用在一台机器中的核心的最大数量,并增加加速比,因为我们增加了团队的数量,从而利用增加更多的计算机节点到一个集群。因此,我们认为,我们的平台是一个有效的和可行的替代利用隐式或并行在目前可用的低成本多核架构的集群。
2016-08-04 cs.DC
Bit-level Parallelization of 3DES Encryption on GPU
三重DES(3DES)是一种标准的基本加密算法,用于多种电子支付应用程序和Web浏览器。在本文中,我们提出了一个并行实现的3DES在GPU上。由于3DES使用64位块加密数据,因此我们的方法将每个64位块视为内核块,并分配一个单独的线程来处理每个位。算法的置换操作、XOR操作和S盒操作在这些内核块内并行完成。该实现得益于使用常量和共享内存类型来优化内存访问。结果显示,与基准多线程CPU实现相比,平均速度提高了10.70倍。该实现可在https://github.com/kaanfurkan35/3DES_GPU上公开获取
2020-07-21 cs.CR cs.DC
A Hybrid Parallel Implementation of the Aho-Corasick and Wu-Manber Algorithms Using NVIDIA CUDA and MPI Evaluated on a Biological Sequence Database
多个匹配算法被用来从一个有限的模式集在一个大的输入字符串中定位模式的出现。Aho-Corasick和Wu-Manber是两种最著名的多重匹配算法,它们需要更高的计算能力,特别是在必须处理大规模数据集的情况下,这在计算生物学应用中很常见。在过去的几年里,图形处理单元(GPU)已经发展成为强大的并行处理器,在科学计算中优于中央处理单元(CPU)。此外,可以并行使用多个GPU,形成混合计算机集群配置,以实现更高的处理吞吐量。本文评估的Aho-Corasick和Wu-Manber算法在混合GPU集群上的并行实现的加速比,当用于处理人类基因组的表达序列标签的快照和不同的问题参数。
2014-07-10 cs.CE cs.DC
Parallel Quicksort without Pairwise Element Exchange
Quicksort是一种在分布式内存并行计算机上进行并行排序的指导性课堂方法,有很多机会说明特定的实现方案和与MPI等常见通信接口的权衡。标准的分布式内存快速排序实现在快速排序递归的每一级交换分区的数据元素。在本文中,我们证明这是不必要的:只分配所选的枢轴就足够了,并将元素重新分配推迟到递归的底部。这减少了从$O(n\log p)$到$O(n)$交换的数据的总量,$n$是要排序的元素的总数,$p$是处理器的2的幂数,这是通过权衡总共$O(p)$附加的枢轴元素分布来实现的。基于这一观察,我们描述了新的,\emph{exchange-free}实施变种的并行快速排序和Wagar的HyperQuicksort。我们已经实现了讨论的四个不同的快速排序的变化在MPI中,并表明,良好的枢轴选择,快速排序没有成对的元素交换可以显着快于标准的实现中等规模的问题。
2018-10-24 cs.DC
A Highly Parallel FPGA Implementation of Sparse Neural Network Training
University of Southern California(南加州大学)
我们展示了一个FPGA实现的并行和可重构架构的稀疏神经网络,能够在芯片上的训练和推理。网络连接使用预先确定的结构化稀疏性,通过降低内存和计算要求来显著降低复杂性。该架构使用边缘处理的概念,从而实现高效的流水线和并行化。此外,该设备可以重新配置,以权衡资源利用与训练时间,以适应不同大小的网络和数据集。复杂性降低和易于重新配置的综合效果使芯片上的网络超参数和结构能够得到更大的探索。作为概念证明,我们展示了在Artix-7 FPGA上的实现结果。
2018-10-11 cs.DC cs.LG
More Parallelism in Dijkstra's Single-Source Shortest Path Algorithm
Dijkstra的单源最短路径(SSSP)问题的算法在$o(n)$深度($n$是输入图中的顶点数)上很难并行化,而不会不合理地增加所需的并行工作。克劳泽等人(1998)提出的观察结果允许一次识别多于一个的顶点作为正确的,并且相应地同时放松更多的边。他们的算法在并行阶段中运行,并且对于某些随机图,他们表明阶段的数量是$O(n^{1/3})$,具有很高的概率。一个工作效率的CRCW PRAM与此深度,但没有实现一个真正的,并行系统。在本文中,我们加强了克劳泽等人的标准,并讨论在其实施过程中工作和阶段数之间的权衡。我们目前的模拟结果与一系列常见的输入图形的深度,一个理想的并行算法,可以应用的标准,在没有成本和并行松弛没有冲突可以实现。这些结果表明,相位数确实是$n$的一个小根,但仍然偏离也可以计算的最短路径长度下限。我们给出了一个共享内存并行实现的最有效的工作版本的Dijkstra的算法运行在并行阶段,我们比较自己的实现著名的$Δ$步进算法。我们可以证明,采用Crauser等人的标准的工作效率SSSP算法与$Δ$ -在我们选择的输入图上步进有竞争力,并且往往更好。尽管没有提供关于所需相位数量的$o(n)$保证,但允许许多正确顶点的并发松弛的标准可能是实际快速并行SSSP实现的可行方法。
2019-05-08 cs.DC
Design and Implementation of a Distributed Middleware for Parallel Execution of Legacy Enterprise Applications
典型的企业使用计算机局域网来执行其业务。在非工作时间,这些联网计算机的计算能力未得到充分利用或未使用。为了利用这种计算能力,应用程序必须重新编码以利用计算中固有的并发性,这对于没有任何源代码的遗留应用程序显然是不可能的。本文提出了一个分布式中间件的设计和实现,它可以通过并行化在多台网络计算机上自动执行一个遗留应用程序,该中间件在网络中的不同主机上并行运行多个二进制可执行代码副本。它封装了遗留应用程序的二进制可执行代码,以便捕获内核级数据访问系统调用,并以安全和无冲突的方式在多台计算机上分布式执行。该中间件还采用了动态调度技术,通过清除网络中主机的可用CPU周期,在最短的时间内执行目标应用程序。这种动态调度还支持主机的CPU可用性随时间变化,并适当地重新调度执行计算的副本,以最大限度地减少执行时间。这个中间件的原型实现已经开发的设计概念的证明。通过几个典型的案例研究对该实现进行了评估,测试结果证实了该中间件的工作符合预期。
2009-08-20 cs.DC
High-Performance Parallelization of Dijkstra's Algorithm Using MPI and CUDA
本文研究使用MPI和CUDA并行化Dijkstra算法以加速大规模图的最短路径计算,实验表明MPI和CUDA分别实现超5倍和10倍加速,并分析了同步开销及邻接矩阵对性能的影响。
2025-03-19 cs.DC
CROFT: A scalable three-dimensional parallel Fast Fourier Transform (FFT) implementation for High Performance Clusters
三维(3D)输入数据的FFT是数值模拟的重要计算核心,并且广泛用于在大量处理器上运行的高性能计算(HPC)代码中。许多科学应用的性能,如分子动力学模拟,取决于所使用的底层3D并行FFT库。本文提出了一种C-DAC三维快速傅里叶变换库,它利用束分解实现了三维并行FFT。为了在不影响性能的情况下利用处理器内核的超线程功能,CROFT被设计为与MPI一起使用多线程。CROFT实现具有使用多线程将计算和内存I/O与MPI通信重叠的创新特性。与其他3D FFT实现相反,CROFT仅使用两个线程,其中一个线程专用于通信,以便它可以有效地与计算重叠。因此,根据所使用的进程的数量,CROFT与FFTW 3库相比实现了约51%至42%的性能改进。
2020-08-27 cs.DC cs.PF
A Tool for Programming Embarrassingly Task Parallel Applications on CoW and NoW
令人尴尬的并行问题可以被分成几个部分,这些部分的特征是在并行计算过程中信息交换非常少(有时甚至没有)。因此,它们可以有效地并行计算利用商品硬件,因此没有特别复杂的互连网络。基本上,这意味着集群、工作站网络和分布式计算以及计算云。尽管这种计算模型很简单,但它可以用来计算相当大范围的问题。JJPF是一个基于Java和Jini的任务并行应用程序开发工具,在工作站和桌面集群和网络等环境中,它是一个有效的解决方案。
2013-06-24 cs.DC
Parallel implementation of a compatible high-order meshless method for the Stokes' equations
在这项工作中,提出了一种并行实现的兼容离散计划的稳态Stokes问题。该方案使用广义移动最小二乘生成微分算子并施加边界条件。这种无网格格式允许速度和压力的高阶收敛,同时还采用了有限差分式稀疏离散。此外,该方法具有固有的可扩展性:模板生成过程需要服从GPU加速的矩阵的局部求逆,并且速度的无发散处理用服从代数多重网格的椭圆对角块取代了全局系统的传统鞍点结构。在这项工作中的实现使用各种Trilinos包利用这种本地和全局并行性,并提供了表现出高阶收敛性和弱可扩展性的基准。
2021-04-29 cs.DC cs.MS cs.NA
Parallel Hardware for Faster Morphological Analysis
American University of Kuwait(美国科威特大学);Rafik Hariri University(拉菲克·哈里里大学)
阿拉伯语中的形态分析是计算密集型的,有许多形式和规则,并且本质上是并行的。本文提出的调查证实,并行算法的有效发展和相应的处理器在硬件中的推导使实现具有吸引人的性能特点。并行硬件的发展包括各种算法建模技术的应用,并发处理的策略,以及针对现代可编程设备的开创性硬件实现的创建。调查包括创建一个基于语言的词干提取阿拉伯语动词根扩展中缀处理,以达到高水平的准确性。这些实现包括三个版本,即软件、非流水线处理器和具有高吞吐量的流水线处理器。目标系统是用于软件实现的高性能多核处理器和用于硬件实现的高端现场可编程门阵列系统。调查包括方法的全面评估,以及所开发的软件和硬件实现的性能和准确性分析。流水线处理器实现了显着的加速比5571.4的软件实现。开发的词干动词词根提取与中缀处理达到87%和90.7%的准确率分析古兰经及其第29章-苏拉特铝Ankabut的文本。
2019-04-09 cs.CL cs.DC
A parallel implementation of the Synchronised Louvain method
网络中的社区发现是一个非常实际和重要的研究领域,在很多领域都有应用。但是,考虑到处理的数据量越来越多,现有的算法需要适应非常大的图。该项目的目标是并行同步鲁汶方法,一个社区发现算法开发的Arnaud Browet,以提高其性能的计算时间,从而能够更快地检测社区在非常大的图形。为了达到这个目标,我们使用API的OpenMP并行算法,然后进行性能测试。我们研究了并行算法的计算时间和加速比,并能够带来一些定性的趋势。与Amdahl定律的理论预测相比,我们获得了很大的加速比。总之,使用并行实现的算法的Browet大型图似乎给好的结果,无论是在计算时间和加速。应进行进一步的试验,以获得更多的定量结果。
2017-02-15 cs.DC cs.DS cs.SI
High-Throughput and Memory-Efficient Parallel Viterbi Decoder for Convolutional Codes on GPU
本文描述了维特比译码算法的并行实现。维特比译码器被广泛应用于无线通信系统中。所提出的解决方案通过应用统一内核实现和并行回溯等优化来优化吞吐量和内存使用。实验评估表明,该解决方案实现了更高的吞吐量相比,以前的GPU加速的解决方案。
2020-11-18 cs.DC eess.SP
A stencil-based implementation of Parareal in the C++ domain specific embedded language STELLA
ETH Zürich(苏黎世联邦理工学院);Università della Svizzera italiana(瑞士意大利语大学)
本文提出在STELLA中实现时间并行的Parareal方法,结合节点级空间并行与时间并行,通过MPI实现Parareal,分析了CPU和GPU后端在对流扩散问题中的加速、并行效率和能耗。
2014-12-03 cs.DC cs.NA math.NA
Tools for Analyzing Parallel I/O
并行应用程序I/O性能通常无法满足用户的期望。此外,由于硬件和软件之间的复杂交互,轻微的访问模式修改可能导致性能的显著变化。这些挑战需要复杂的工具来捕获、分析、理解和调优应用程序I/O。在本文中,我们重点介绍了监测工具的进展,以帮助解决这一问题。我们还描述了最佳实践,确定测量和分析中的问题,并提供实用的方法来将并行I/O分析转化为用户,设施运营商和研究人员的可操作结果。
2018-07-18 cs.DC
Parallel Implementations for Computing the Minimum Distance of a Random Linear Code on Multicomputers
线性码的最小距离是信息论中的一个重要概念。因此,它的计算所需的时间是非常重要的,在这方面的许多问题。在本文中,我们介绍了一个家庭的Brouwer-Zimmermann算法的分布式存储器架构的实现,用于计算F2上的随机线性码的最小距离。目前的商业和公共领域软件都只能在单核架构或共享内存架构上工作,这在计算中使用的核心/处理器数量上受到限制。我们的实现集中在分布式存储器架构,从而能够采用数百甚至数千个核心的最小距离的计算。我们的实验结果表明,我们的实现速度快得多,甚至高达几个数量级,比目前广泛使用的实现。
2019-11-20 cs.DC cs.IT math.IT
Parallel Backtracking with Answer Memoing for Independent And-Parallelism
目标级独立与并行(IAP)是通过调度两个或多个在运行时间不会相互干扰的目标来实现的。这可以安全地完成,即使这些目标可以产生多个答案。到目前为止,最成功的IAP实现使用了重新计算答案和顺序回溯。虽然原则上简化了实现,但如果并行目标的粒度足够大并且它们产生多个答案,则重新计算可能非常低效,而顺序排序的回溯限制了并行性。而且,尽管预期的简化,经典方案的实施已被证明涉及复杂的工程,随之而来的是系统维护和扩展的困难,同时仍然经常遇到众所周知的被困目标和垃圾槽问题。这项工作提出了一种替代的并行回溯模型IAP及其实现。该模型具有并行无序(即,非时间顺序)回溯,并依赖于答案记忆来重用和组合答案。我们表明,这种方法可以带来显着的性能优势。此外,它可以带来一些简化的重要工程任务,涉及到实现回溯机制的以前的方法。
2011-07-24 cs.DC cs.PL
Performance Analysis of Traditional and Data-Parallel Primitive Implementations of Visualization and Analysis Kernels
当研究在日益增加的并发性和复杂性的计算平台上的并行可视化和分析方法时,绝对运行时间的测量作为性能的总结是有用的。我们可以通过测量和检查硬件性能计数器的更详细的度量来获得更多的见解,例如以特定方式实现的算法执行的指令数量,移动到内存/从内存移动的数据量,通过缓存命中/未命中率的存储层次结构利用率水平,等等。这项工作的重点是在现代多核平台上的性能分析三种不同的可视化和分析内核,以不同的方式实现:一个是“传统”,使用C++和VTK的组合,另一个使用VTK-m的数据并行方法。我们的性能研究包括两个不同的多核CPU平台上的几个不同的硬件性能计数器的测量和报告。结果揭示了这两种不同方法实现这些内核之间有趣的性能差异,使用运行时作为唯一度量标准的结果并不明显。
2020-10-05 cs.DC
Massively-Parallel Break Detection for Satellite Data
遥感领域目前面临着大量的数据。虽然这提供了各种令人兴奋的研究机会,但它也带来了关于计算时间和空间要求的重大挑战。在实践中,庞大的数据量使得现有方法对于处理和分析所有可用数据来说太慢。这项工作的目的是加速BFAST,国家的最先进的方法之一,为打破检测给定的卫星图像时间序列。特别是,我们提出了一个完全并行的实现BFAST,可以有效地利用现代并行计算设备,如GPU。我们的实验评估表明,建议的GPU实现是四个数量级的速度比现有的公开可用的实现和高达十倍的速度比相应的多线程CPU执行。运行时间的大幅减少使得在几秒或几分钟内而不是几小时或几天内分析显著较大的数据集成为可能。我们展示了我们的实现的实际好处,给出了人工和真实的数据集。
2018-07-04 cs.DC
Parallel and Distributed Collaborative Filtering: A Survey
协同过滤是实现推荐系统时最优选的技术之一。最近,极大的兴趣已经转向并行和分布式实现的协同过滤算法。这项工作是一个调查的并行和分布式协同过滤的实现,旨在不仅提供一个全面的介绍该领域的发展,但也提供了未来的研究方向,突出的问题,需要进一步发展。
2014-09-09 cs.DC cs.IR
High-Performance Parallel Implementation of Genetic Algorithm on FPGA
Federal University of Rio Grande do Norte (UFRN)(北里奥格兰德联邦大学)
遗传算法(GAs)用于解决搜索和优化问题,其中可以使用具有概率和非确定性转换的迭代过程来找到最优解。然而,根据问题的性质,由于遗传算法的计算复杂性,在顺序机器中找到解决方案所需的时间可能很高。提出了一种基于现场可编程门阵列(FPGA)的遗传算法并行实现方法。优化系统的处理时间是该项目的主要目标。与处理时间和面积占用(在FPGA上)为各种人口规模的结果进行了分析。关于GA响应的两个变量函数的优化的准确性的研究也进行了评估的硬件实现。然而,本文提出的高性能实现能够通过对硬件架构的一些调整来处理更多的变量。
2018-06-20 cs.AI cs.AR cs.DC
Popt4jlib: A Parallel/Distributed Optimization Library for Java
本文描述了开源popt 4jlib库(https://githhub.org/ioannislogou/popt4jlib)的架构设计以及关键实现细节,该库包含相当大量的元启发式和其他精确优化算法并行/分布式Java实现。虽然我们报告的加速和效率问题的一些算法在图书馆,我们主要关心的是详细的设计决策的关键并行/分布式基础设施内置到图书馆,使开发人员更容易开发自己的并行实现的算法,而不是简单地使用它作为一个关闭的自我应用程序库。
2019-08-01 cs.DC cs.NE
A Comparison of Parallel Graph Processing Implementations
大型网络分析问题的数量迅速增长,导致了许多并行和分布式图处理系统的出现--2014年的一项调查确定了80多个。从那时起,景观已经演变;一些包已经变得不活跃,而更多的正在开发中。对于大多数开发人员来说,确定给定问题的最佳方法是不可行的。为了使这种系统的能力的简单,严格和可重复的比较,我们提出了一种方法和相关的软件,用于分析并行,开源图形库的性能和可扩展性。我们在五个图形处理包上展示了我们的方法:GraphMat,Graph 500,图形算法平台基准套件,GraphBIG和PowerGraph,使用合成和真实世界的数据集。我们检查以前被忽视的方面的并行图形处理性能,如执行阶段和能源使用的三种算法:广度优先搜索,单源最短路径,PageRank和比较我们的结果Graphalytics。
2017-05-17 cs.DC cs.PF
Seismic Imaging: An Overview and Parallel Implementation of Poststack Depth Migration
地震偏移是震测资料处理的核心步骤,对石油勘探具有重要意义。频率-空间域叠后深度偏移是常用的深度偏移算法之一。波动方程的解可以近似为FIR滤波过程,以外推原始数据并提取地下图像。由于其计算的复杂性,它的并行实现是鼓励。为了计算下一个深度级别,需要先前的深度级别。因此,由于数据依赖性,这部分不能并行化。但是在每个深度级别上都有大量的并行性,并且可以并行化。在CUDA编程的情况下,每个线程计算下一个深度平面上的单个像素。在计算下一个深度计划之后,我们可以通过对所有频率求和来计算深度行,并计算最终偏移图像中的所有深度行结果。在CUDA中实现了叠后深度偏移,并通过不同问题大小的顺序代码对其性能进行了评价。
2019-11-02 cs.DC cs.PF eess.IV
A Tabu Search based clustering algorithm and its parallel implementation on Spark
著名的K-means聚类算法已广泛应用于从数据分析到物流应用的不同应用领域。然而,K-means算法可能会受到诸如初始质心选择等因素的影响,并且很容易陷入局部最优。本文提出了一种改进的K-means聚类算法,该算法通过Tabu搜索策略进行了扩展,更好地适应了大数据应用的需求。我们的设计进一步增强,以利用基于Spark框架的并行处理。计算实验证明了我们的禁忌搜索的聚类算法的优越性,在广泛使用的版本的K-means方法体现在Spark MLlib,比较算法的可扩展性,准确性和有效性。
2017-11-30 cs.DC cs.SI
mplrs: A scalable parallel vertex/facet enumeration code
我们描述了一个新的并行实现,mplrs,顶点枚举代码lrs,使用MPI并行环境,可以在网络上运行的计算机。该实现使用了一个C包装器,它基本上使用了现有的lrs代码,只做了很小的修改。mplrs是从早期的并行实现plrs衍生而来的,由G. C++中的Roumanis。plrs使用Boost库并在共享内存机器上运行。在开发mplr的过程中,我们发现了一种平衡并行树搜索的方法,称为预算,它大大提高了并行性,超越了以前在32个核心左右遇到的瓶颈。这种方法可以很容易地适用于其他逆向搜萦枚举代码。我们还报告了一些初步的计算结果比较并行和顺序代码的顶点/面枚举问题的凸多面体。选择的问题范围从简单到高度退化的多面体。对于大多数测试的问题,结果清楚地表明,即使只有8个内核可用,使用基于逆向搜萦的代码lrs的并行实现mplrs也具有优势。对于一些问题,几乎线性加速观察到1200个核心,最大数量的核心测试。
2017-10-12 cs.CG cs.DC cs.MS
Programming Parallel Dense Matrix Factorizations with Look-Ahead and OpenMP
我们调查的密集矩阵分解(DMF)算法的并行化策略,使用OpenMP,从遗留(或传统)的解决方案,它只是简单地提取并发从多线程版本的BLAS。这种方法也不同于更复杂的运行时辅助实现,后者将操作分解为任务,并通过指令和运行时支持来识别依赖关系。相反,我们的策略达到高性能显式地嵌入到DMF代码的静态前瞻技术,以克服性能瓶颈的面板因式分解,并实现尾随更新通过缓存感知多线程实现的BLAS。虽然并行算法是用高级别的抽象来指定的,但实际的实现可以很容易地从它们中导出,从而为在任何具有类似OpenMP的运行时的多核平台上导出相当大一部分LAPACK功能的高性能实现铺平了道路。
2018-04-19 cs.DC cs.MS
A parallel implementation of a derivative pricing model incorporating SABR calibration and probability lookup tables
我们描述了一个衍生品定价模型的高性能并行实现,其中我们引入了一种新的并行方法,用于校准行业标准的SABR(随机-αβρ)随机波动率模型,使用三个罢工输入。SABR校准涉及非线性三维最小化和并行化是通过将几个假设独特的SABR类模型。我们的校准方法是基于表面相交的原则,保证收敛到一个唯一的解决方案,并通过迭代细化局部网格细化的二维的网格。作为我们的定价模型的一部分,我们还提出了一个快速的并行迭代算法,用于创建动态大小的累积概率查找表,能够上限最大估计线性插值误差。我们优化表现出线性插值误差聚类的概率分布的性能。我们还通过我们的定价模型的多个算法步骤内的准确性参数的变化的结果进行了实证评估的误差传播。算法在使用Nvidia的Fermi架构的GPU(图形处理单元)上实现。定价模型的目标是使用Copula方法评估价差期权,但所提出的算法可以应用于更广泛的金融工具。
2013-01-14 cs.CE cs.DC q-fin.CP
Implementing a GPU-based parallel MAX-MIN Ant System
最大最小蚁群算法(MAX-MIN Ant System,MMAS)是最著名的蚁群优化算法之一,在求解复杂的组合优化问题上有着广泛的应用前景。摩尔定律的减速,以及能够以高速进行通用计算的图形处理单元(GPU)的可用性,引发了对基于GPU的ACO实现的开发的相当大的研究努力。在本文中,我们讨论了一系列新的想法,以改善基于GPU的并行MMAS实现,使其能够更好地利用两个后续的Nvidia GPU架构提供的计算能力。具体而言,基于加权水库采样算法,我们提出了一种新的并行实现的节点选择过程,这是在MMAS和其他ACO算法的心脏。我们还提出了另一个关键组件-禁忌列表结构-这是在ACO的解决方案建设阶段使用的内存效率的实现。所提出的实现,结合现有的方法,导致总共六个MMAS的变种,这是一组旅行推销员问题(TSP)的情况下,从198到3,795城市进行评估。结果表明,我们的MMAS实现与最先进的基于GPU和基于多核CPU的并行ACO实现相比具有竞争力:事实上,Nvidia V100 Volta GPU的时间分别减少了7.18倍和21.79倍。最快的MMAS变体能够在解决1,002个城市的实例时每秒生成超过100万个候选解决方案。此外,我们表明,结合2-opt局部搜索启发式,建议的并行MMAS发现高质量的解决方案的TSP实例高达18,512个节点。
2020-01-18 cs.DC cs.NE
Massively parallel implementation and approaches to simulate quantum dynamics using Krylov subspace techniques
我们已经开发了一个应用程序,并实现了并行算法,以提供一个计算框架,适合大规模并行超级计算机研究量子系统的幺正动力学。我们使用著名的并行库,如PETSc/SLEPc与高性能计算方法相结合,以克服大内存的要求,能够研究系统的希尔伯特空间维度包括超过90亿个独立的量子态。此外,我们提供了用于模拟的三个最重要的阶段的并行方法的描述:处理希尔伯特子空间的基础上,构建一个通用的哈密顿算子和系统的时间演化的Krylov子空间方法的矩阵表示。我们采用我们的设置来研究准无序和清洁的多体系统的演化,专注于返回概率和相关的动力学指数:大系统的尺寸提供了新的见解,他们的热化特性。
2017-04-10 cond-mat.dis-nn cond-mat.str-el cs.DC
parHSOM: A novel parallel Hierarchical Self-Organizing Map implementation
Computer Science \& Engineering Mississippi State University Starkville, United States;Computer Science University of Alabama Tuscaloosa, United States
本文提出parHSOM,一种并行层次自组织映射架构,旨在加速HSOM训练过程,通过实验验证其在不同测试平台和数据集上的高效性,同时保持性能优势。
2026-05-04 cs.AI cs.CR cs.DC
A Sparse SCF algorithm and its parallel implementation: Application to DFTB
我们提出了一个算法和它的并行实现解决Hartree-Fock或密度泛函理论中遇到的自洽问题。该算法利用矩阵的稀疏性,通过使用本地分子轨道。该实现允许有效地利用现代对称多处理(SMP)计算机体系结构。作为第一个应用程序,该算法被用于密度泛函的紧束缚方法,其中大部分的计算时间是花在线性代数例程(对角化的Fock/Kohn-Sham矩阵)。我们表明,与此算法(i)单点计算非常大的系统(数百万个原子)可以在大型SMP机器上执行(ii)涉及中等规模系统的计算(1~000- 100万个原子)也有很强的加速能力,可以在标准服务器上有效地运行。可以控制分子轨道系数的偏离,使得它保持小于SCF收敛标准。
2014-02-12 cs.DC physics.chem-ph physics.comp-ph
ParaPlan: A Tool for Parallel Reachability Analysis of Planar Polygonal Differential Inclusion Systems
我们提出了ParaPlan工具,它提供了微分包含(SPDI)定义的平面混合系统的可达性分析。它使用SPeeDI工具底层算法的并行化和优化版本。性能比较表明,在各种基准上的顺序实现的速度高达83倍。我们使用的一些基准是随机生成的新方法的基础上划分的平面与沃罗诺伊图。
2017-09-07 cs.DC cs.PF
Parallel Strong Connectivity Based on Faster Reachability
针对大直径图上并行SCC慢的问题,提出基于垂直粒度控制(VGC)和并行哈希袋的并行可达性算法,实现高效SCC,在18个图上平均比GBBS快6.0倍。
2023-05-15 cs.DC cs.DS