Strong Scaling of Matrix Multiplication Algorithms and Memory-Independent Communication Lower Bounds
如果并行算法在P个处理机上的运行时间是1/P线性的,包括所有的通信开销,则该并行算法具有完美的强标度性。具有完美强标度的矩阵乘法的分布式内存并行算法最近才被发现。一种是基于经典矩阵乘法(Solomonik and Demmel,2011),另一种是基于Strassen的快速矩阵乘法(Ballard,Demmel,Holtz,Lipshitz,and Schwartz,2012)。这两种算法都可以完美地扩展,但只能扩展到处理器间通信不再扩展的处理器数量。我们得到了一个内存独立的通信成本的经典和基于Strassen的分布式存储矩阵乘法算法的下界。这些界限意味着,没有经典的或基于Strassen的并行矩阵乘法算法可以强大的规模完全超出上述两个并行算法已经达到的范围。记忆无关的边界和强缩放边界推广到其他算法。
2012-02-14 cs.CC cs.DC cs.DS
A Rigorous Extension of the Schönhage-Strassen Integer Multiplication Algorithm Using Complex Interval Arithmetic
University of Canterbury(坎特伯雷大学)
针对Schönhage-Strassen算法在浮点硬件上的舍入误差问题,提出使用区间算术保证结果正确性并确定硬件极限,实验表明双精度可处理75000位256进制整数。
2010-06-02 cs.CR cs.DS cs.NA
Faster Convolutions: Yates and Strassen Revisited
本文通过多线性代数视角分析乘积域卷积,利用快速矩阵乘法理论推导出改进的$O(|D|^{1.582})$时间算法,并指出Strassen渐近秩猜想将意味着准线性时间算法。
2025-05-28 cs.CC cs.DS
Matrix multiplication algorithms from group orbits
我们展示了如何构造高度对称的矩阵乘法算法。特别是,我们考虑的算法,矩阵乘法张量分解成一个和秩1张量,分解本身由轨道下的一些有限群作用。我们展示了如何使用相应的组的表示理论,以获得简单的约束的分解,我们解决了手为n= 2,3,4,5,恢复斯特拉森的算法(在一个特别对称的形式)和新的算法更大的n。虽然这些新的算法不提高已知的上界张量秩或矩阵乘法指数,他们是美丽的,在自己的权利,我们指出修改这个想法,可能会导致进一步的改进。我们的构造还提出了可以为新算法挖掘的进一步模式,包括与格的诱人联系。特别是,使用格,我们给最透明的证明日期Strassen的算法;相同的证明工程的所有n,产生一个分解与$n^3 - n + 1$条款。
2016-12-12 cs.CC cs.DS math.AG
Graph Expansion Analysis for Communication Costs of Fast Rectangular Matrix Multiplication
University of California, Berkeley(加州大学伯克利分校);Technische Universität Berlin(柏林工业大学)
本文通过图扩展分析方法,为快速矩形矩阵乘法算法推导通信成本下界,并证明部分下界最优。
2012-09-11 cs.CC cs.DS cs.NA
Deterministic Sparse Pattern Matching via the Baur-Strassen Theorem
本文基于Baur-Strassen定理创新性地结合组合与代数技术,首次为Constellation等点模式匹配及稀疏通配符匹配问题提出了确定性近线性时间算法。
2023-10-18 cs.CG cs.DS
Faster Polynomial Multiplication via Discrete Fourier Transforms
研究了任意域上多项式乘法的复杂性。我们提出了一个统一的方法,概括了所有已知的渐近最快的算法,这个问题。特别是,著名的算法乘法多项式的领域支持DFT的大光滑的订单,Schönhage-Strassen的算法在任意领域的特点不同2,Schönhage的算法在领域的特点2,和康托-Kaltofen的算法在任意代数-都似乎是这种方法的实例。我们还获得了更快的算法多项式乘法在某些领域不支持DFT的大光滑订单。我们证明,Schönhage-Strassen的上限不能进一步提高有理数领域,如果我们只考虑算法的基础上连续应用DFT,所有已知的最快的算法。我们还探讨了如何将最近的整数乘法的Fürer算法转移到正特征的任意域上的多项式乘法问题。这项工作的灵感来自最近的改进密切相关的问题的复杂性整数乘法的傅勒及其随之而来的模块化算术处理由于德,Kurur,萨哈,和Saptharishi。我们探讨的障碍,在转移技术的解决方案的一个问题的解决方案的其他。
2010-10-06 cs.CC cs.DS
Symmetries of matrix multiplication algorithms. I
在这项工作中,矩阵的快速乘法算法被认为是。任何算法都有一定的自同构群。这些自同构群被发现的一些著名的算法,包括算法的Hopcroft,Laderman和潘。对于Hopcroft算法和Laderman算法,自同构群分别同构于$S_3\times Z_2$和$S_4$.算法的对称性研究对于寻找快速算法可能是一个富有成效的想法,通过与众所周知的代码,格和图的优化问题进行类比。{ \em Keywords}:Strassen算法,对称性,快速矩阵乘法。
2015-08-05 cs.CC cs.DS math.GR
Graph Expansion and Communication Costs of Fast Matrix Multiplication
算法的通信成本(也称为I/O复杂度)与相应计算图的扩展特性密切相关。我们证明了这对Strassen的和其他快速矩阵乘法算法,并获得第一个下界的通信成本。在顺序情况下,其中处理器具有大小为$M$的快速存储器,其太小而不能存储三个$n$ × $n$矩阵,对于许多矩阵乘法算法,在快速和慢速存储器之间移动的字的数目的下限是$Ω((\frac{n}{\sqrt M})^{ω_0}\cdot M)$,其中$ω_0$是算术计数中的指数(例如,用于Strassen的$ω_0 = \lg 7$和用于常规矩阵乘法的$ω_0 = 3$)。对于$p$并行处理器,每个处理器具有大小为$M$的快速存储器,下限小$p$倍。这些界限是可达到的顺序和并行算法,因此最佳的。这些界限也可以通过线性代数中的许多快速算法来获得(例如,用于LU、QR和求解Sylvester方程的算法)。
2011-09-08 cs.CC cs.DC cs.DS
Faster Walsh-Hadamard Transform and Matrix Multiplication over Finite Fields using Lookup Tables
我们使用查找表来设计更快的算法,在有限域上的重要代数问题。这些只使用算术运算和查找表运算的快速算法可能有助于解释确定这些重要问题的复杂性的困难。我们在有限域上的结果如下。可以使用$O(N \log N / \log \log N)$位操作来计算长度为$N$的向量的沃尔什-哈达玛变换。这推广到定义为固定矩阵的克罗内克幂的任何变换。相比之下,快速沃尔什-阿达玛变换(类似于快速傅立叶变换)使用$O(N \log N)$算术运算,这被认为是最佳的常数因子。使用$O(N^ω)$运算将两个$N \times N$矩阵相乘的任何代数算法都可以转换为使用$O(N^ω/ (\log N)^{ω/2 - 1})$位运算的算法。例如,Strassen的算法可以转换成使用$O(N^{2.81} / (\log N)^{0.4})$位操作的算法。它仍然是一个开放的问题,具有实际意义,以确定最小的常数$c$,使Strassen的算法可以实现使用$c \cdot N^{2.81} + o(N^{2.81})$算术运算;使用查找表允许保存一个超常数因子位操作。
2022-11-09 cs.DS
Fast integer multiplication using generalized Fermat primes
近35年来,Sch{<$}nhage-Strassen的算法一直是已知的最快的整数乘法算法,其时间复杂度为O(n $\times$ log n $\times$ log log n)。在2007年,F{ü}rer证明了存在K > 1和一个算法执行此操作的时间复杂度为O(n $\times$ log n $\times$ K log n)。Harvey、van der Hoeven和Lecerf最近的工作表明,这个复杂性估计可以得到改进,以使K = 8,实际上K = 4。使用另一种算法,它依赖于算术模广义费马素数,我们得到了同样的结果K = 4,通过仔细的复杂性分析,在确定性的多带图灵模型。
2018-04-17 cs.CC cs.DM cs.DS
Fast Integer Multiplication using Modular Arithmetic
本文给出了一个用于两个$N$位整数相乘的$O(N\cdot \log N\cdot 2^{O(\log^*N)})$算法,它改进了Schönhage-Strassen的$O(N\cdot \log N\cdot \log\log N)$算法.这两种算法都使用模运算。最近,傅勒给出了一个$O(N\cdot \log N\cdot 2^{O(\log^*N)})$算法,但使用算术复数,而不是模块化的算术。在本文中,我们使用多元多项式乘法以及从Fürer算法的想法,以实现这种改进的模块化设置。我们的算法也可以被看作是一个$p$ -adic版本的Fürer的算法。因此,我们表明,这两个看似不同的方法,整数乘法,模和复杂的算术,是相似的。
2008-09-19 cs.DS cs.SC
The I/O complexity of hybrid algorithms for square matrix multiplication
本文导出了一类计算$n \times n$方阵乘积的混合算法的I/O复杂度的渐近紧下界,该混合算法结合了具有计算复杂度$Θ{n^{\log_2 7}}$的“\emph{Strassen-like}”快速矩阵乘法方法和具有计算复杂度$Ω\left(n^3\right)$的“\emph{standard} "矩阵乘法算法.我们提出了一个新的和紧密的$Ω\left(\left(\frac{n}{\max\{\sqrt{M},n_0\}}\right)^{\log_2 7}\left(\max\{1,\frac{n_0}{M}\}\right)^3M\right)$下界的I/O复杂性的一类"\emph{uniform, non-stationary}“混合算法时,执行在一个两级存储层次结构与$M$字的快速存储器,其中$n_0$表示的阈值大小的子问题,使用标准算法计算的代数复杂性$Ω\left(n^3\right)$。下限实际上是为更一般的“\emph{non-uniform, non-stationary}”混合算法类推导的,这种混合算法允许递归调用具有不同的结构,即使它们涉及相同大小和相同递归级别的矩阵乘法,尽管定量表达式变得更加复杂。我们的研究结果是第一个I/O下界为这些类的混合算法。所有提出的下界适用,即使重新计算的部分结果是允许的,是渐近紧。证明技术结合分析的格里戈里耶夫流的矩阵乘…
2019-04-29 cs.DS
Simple, Fast and Practicable Algorithms for Cholesky, LU and QR Decomposition Using Fast Rectangular Matrix Multiplication
Universidad de Cantabria(坎塔布里亚大学)
本文提出了一种基于快速矩形矩阵乘法的Cholesky/LU/QR分解算法,时间复杂度为O(n^{2.529}),并展示了其在实际应用中的优势。
2018-12-05 cs.DS cs.NA math.NA
Designing Incoherent Dictionaries for Compressed Sensing: Algorithm Comparison
提出了一种设计非相干字典的新方法。
2012-06-19 cs.DS cs.IT math.IT
Tensor Decompositions and Adiabatic Quantum Computing for Discovering Practical Matrix Multiplication Algorithms
本文将张量分解表述为 HUBO/QUBO 并利用量子退火发现矩阵乘法算法,提出分解式与整体式两种方法,后者可从理论上搜索更快的固定长度分解。
2024-06-19 cs.DS quant-ph
Fast matrix multiplication techniques based on the Adleman-Lipton model
在分布式存储器电子计算机上,快速并行矩阵乘法算法的实现和关联已经产生了惊人的结果和见解。在这篇论文中,我们使用分子生物学的工具来证明Strassen的快速矩阵乘法算法与DNA的理论编码的基础上的$n$ -模集的剩余数系统,从而证明计算数学与DNA的可行性。其结果是,一般可扩展的实现该模型的DNA计算范式,并可以推广到DNA计算机上的应用程序的\emph{all}快速矩阵乘法算法。我们还讨论了这种可扩展的实现的实际能力和问题。用DNA进行矩阵计算的快速方法很重要,因为它们也允许用DNA有效地实现其他算法(即求逆、计算行列式和图论)。
2011-12-19 cs.DS cs.ET q-bio.QM
Designing Practical PTASes for Minimum Feedback Vertex Set in Planar Graphs
我们提出了两个算法的最小反馈顶点集问题的平面图:一个$O(n \log n)$ PTAS使用线性核和平衡分离器,和一个启发式算法使用核化和局部搜索。我们实现了这些算法,并将其性能与Becker和Geiger的2-近似算法进行了比较。我们观察到,虽然我们的PTAS是有竞争力的2-近似算法的大平面图,其运行时间要长得多。我们的启发式算法在大多数大型平面图上的性能优于2-近似算法,并提供了运行时间和解质量之间的折衷,即“PTAS行为”。
2018-04-21 cs.DS
Algorithms for matrix multiplication via sampling and opportunistic matrix multiplication
本文提出一种基于采样构造更大矩阵并单次运行 broken 乘法算法的近似矩阵乘法方法,将渐近运行时间从 $O(n^{2.778})$ 改进到 $O(n^{2.763})$,并评估了其实际运行时间,指出仍需进一步优化才能具备竞争力。
2024-02-13 cs.DS
Designing optimal- and fast-on-average pattern matching algorithms
给定模式$w$和文本$t$,关于$w$的$t$上的模式匹配算法的速度是$t$的长度与为了将$w$搜索到$t$中而执行的文本访问的数量的比率。首先,我们提出了一个通用的方法来计算的极限的模式匹配算法,关于$w$,在iid文本的预期速度。接下来,我们将展示如何确定最大的速度,可以实现一个大类的算法,连同运行此速度的算法。由于这一决定的复杂性使得它不可能处理模式的长度大于4,我们提出了多项式启发式。最后,我们的方法进行了比较与9个预先存在的模式匹配算法从理论和实践的角度来看,即无论是在IID文本的限制预期速度,并在实际数据上观察到的平均速度。在所有情况下,预先存在的算法都优于。
2016-11-25 cs.DS
Designing a 3D Parallel Memory-Aware Lattice Boltzmann Algorithm on Manycore Systems
格子玻尔兹曼方法(Lattice Boltzmann method,LBM)是求解计算流体力学(Computational Fluid Dynamics,CFD)问题的一种很有前途的方法,但其内存受限的性质限制了LBM算法在现代计算机体系结构上的性能。本文介绍了新的顺序和并行三维内存感知LBM算法,以优化其内存访问性能。新算法结合了单拷贝分布、单扫描、交换算法、棱镜遍历和合并两个时间步长的特点。我们还设计了一个并行的方法,以保证线程的安全性和减少同步的并行LBM算法。最后,我们在三个高端众核系统上评估了它们的性能,并证明了我们新的3D内存感知LBM算法比最先进的Palabos软件(实现了RISK Swap Prism LBM求解器)的性能高出89%。
2022-08-10 cs.DC cs.DS
Designing Deterministic Polynomial-Space Algorithms by Color-Coding Multivariate Polynomials
近年来,一些强大的技术已经发展到设计{ \em随机}多项式空间参数化算法。在本文中,我们介绍了一种增强的颜色编码设计确定性多项式空间参数化算法。我们的方法旨在减少随机选择的数量,利用特殊结构的解决方案。使用我们的方法,我们得到以下确定性算法(见问题定义的介绍)。1.多项式空间$O^*(3.86^k)$ -时间(指数空间$O^*(3.41^k)$ -时间)算法,用于{ \sc $k$ -内部外分支},改进了以前最快的{ \em指数空间} $O^*(5.14^k)$ -时间算法。2.弧着色有向图上{ \sc $k$ -彩色外分支}和平面边着色图上{\sc $k$-彩色完美匹配}的多项式空间$O^*((2e)^{k+o(k)})$ -时间(指数空间$O^*(4.32^k)$ -时间)算法.为了获得我们的多项式空间算法,我们表明,$(n,k,αk)$ -分裂器($α\ge 1$),特别是$(n,k)$ -完美的哈希家庭可以列举一个接一个的多项式延迟。
2017-12-19 cs.DS
Greedy and Local Ratio Algorithms in the MapReduce Model
MapReduce已经成为设计分布式算法在集群上处理大数据的事实标准模型。有相当多的研究设计有效的MapReduce算法的聚类,图优化,和子模块优化问题。我们开发了新的技术,设计贪婪和本地比率算法在这种情况下。我们的随机化局部比率技术给出了加权顶点覆盖和加权匹配的$2$ -近似,以及加权集合覆盖的$f$ -近似,所有这些都在恒定数量的MapReduce轮中。我们的随机贪婪技术给出了算法的最大独立集,最大集团,和一个$(1+ε)\ln Δ$ -近似加权集覆盖。我们还给出了用$(1+o(1))Δ$颜色进行顶点着色和用$(1+o(1))Δ$颜色进行边着色的贪心算法。
2018-06-17 cs.DS
Designing Perfect Simulation Algorithms using Local Correctness
考虑一个随机算法,它使用递归从分布中精确抽取样本。这样的算法被称为完美模拟,在这里,各种方法来建立这种类型的算法被证明是从同一个结果:完美模拟基本定理(FTPS)。FTPS给出了递归概率算法的输出恰好来自期望分布的两个充分必要条件。首先,算法必须以概率1终止。其次,算法必须是局部正确的,这意味着如果原始算法中的递归调用被从所需分布中提取的预言机所取代,那么这个新算法可以被证明是正确的。虽然验证这些条件通常很简单,但它们非常强大,给出了接受/拒绝,过去耦合,随机循环器,只读CFTP,部分拒绝抽样,部分递归接受拒绝和各种伯努利工厂的正确性。我们通过构建一个新的线性函数的伯努利工厂来说明该算法的使用,该方法比以前的方法快41%。
2019-07-15 cs.DS math.PR stat.CO
Deterministic Polynomial-Time Algorithms for Designing Short DNA Words
设计短DNA字是构建集合的问题(即,代码)的n个DNA串(即,字),使得每对字之间的汉明距离至少为k,并且n个字满足一组附加约束。这个问题有应用,例如,DNA自组装和DNA阵列。以前的工作包括那些扩展结果从编码理论获得的界限代码和字的大小为生物学动机的限制和那些应用启发式局部搜索,遗传算法,和随机算法。特别地,Kao、Sanghi和Schweller(2009)开发了多项式时间随机算法来构建长度在最小可能字长的乘法常数内的n个DNA字(例如,9 max{log n,k}),其以高概率满足各种约束集合。在本文中,我们给出了确定性的多项式时间算法来构建DNA字的基础上去随机化技术。我们的算法可以构建n个较短长度的DNA字(例如,2.1 log n + 6.28 k),并满足相同的约束条件,由算法的高等人的话。此外,我们扩展这些新的算法,以构建满足一个更大的约束条件的算法的高等人的话。不工作。
2012-01-30 cs.CE cs.DS cs.IT
Designing a parallel suffix sort
后缀排序在包括基因组学在内的各种计算算法中以及在频繁使用的日常软件应用中起着关键作用。对于给定的基数,当字符串中有很多重复字符时,排序算法就变得棘手了。在该领域中有各种创新的实现方式,曼伯·迈尔斯。我们在这里提出了一个分析,使用广义多项式分解的概念来排序这些后缀。这些子串特定多项式的初始生成可以使用并行线程和共享存储器高效地完成。不同因子的集合和它们的顺序是事先已知的,这有助于我们相应地对多项式(相当于字符串)进行排序。
2022-10-04 cs.DS
Fine-Grained Computation in 3-Space: Matrix Multiplication and Graph Problems
本文基于经典物理约束,提出了三维空间中矩阵乘法及图和迷宫问题的最优细粒度算法,证明了三维网格在渐近意义上优于现有并行算法并确立了计算下界。
2024-12-19 cs.DS