English
Related papers

Related papers: Fast Matrix Multiplication Without Tears: A Constr…

200 papers

A large fraction of the arithmetic operations required to evaluate deep neural networks (DNNs) consists of matrix multiplications, in both convolution and fully connected layers. We perform end-to-end learning of low-cost approximations of…

Machine Learning · Computer Science 2018-06-11 Michael Tschannen , Aran Khanna , Anima Anandkumar

An open-source C++ framework for discovering fast matrix multiplication schemes using the flip graph approach is presented. The framework supports multiple coefficient rings -- binary ($\mathbb{Z}_2$), modular ternary ($\mathbb{Z}_3$) and…

Symbolic Computation · Computer Science 2026-03-04 A. I. Perminov

We present a non-commutative algorithm for the multiplication of a 2 x 2 block-matrix by its adjoint, defined by a matrix ring anti-homomorphism. This algorithm uses 5 block products (3 recursive calls and 2 general products)over C or in…

Symbolic Computation · Computer Science 2021-01-05 Jean-Guillaume Dumas , Clément Pernet , Alexandre Sedoglavic

In this paper we study a worst case to average case reduction for the problem of matrix multiplication over finite fields. Suppose we have an efficient average case algorithm, that given two random matrices $A,B$ outputs a matrix that has a…

Data Structures and Algorithms · Computer Science 2024-04-15 Ashish Gola , Igor Shinkar , Harsimran Singh

We give explicit low-rank bilinear non-commutative schemes for multiplying structured $n \times n$ matrices with $2 \leq n \leq 5$, which serve as building blocks for recursive algorithms with improved multiplicative factors in asymptotic…

Symbolic Computation · Computer Science 2025-12-02 Kirill Khoruzhii , Patrick Gelß , Sebastian Pokutta

Parallel matrix multiplication is one of the most studied fundamental problems in distributed and high performance computing. We obtain a new parallel algorithm that is based on Strassen's fast matrix multiplication and minimizes…

Data Structures and Algorithms · Computer Science 2012-02-16 Grey Ballard , James Demmel , Olga Holtz , Benjamin Lipshitz , Oded Schwartz

While Strassen's matrix multiplication algorithm reduces the complexity of naive matrix multiplication, general-purpose hardware is not suitable for achieving the algorithm's promised theoretical speedups. This leaves the question of if it…

Hardware Architecture · Computer Science 2025-02-17 Trevor E. Pogue , Nicola Nicolici

We consider the famous Strassen algorithm for fast multiplication of matrices. We show that this algorithm has a nontrivial finite group of automorphisms of order 36 (namely the direct product of two copies of the symmetric group on 3…

Computational Complexity · Computer Science 2014-08-28 Vladimir P. Burichenko

We explore new approaches for finding matrix multiplication algorithms in the commutative setting by adapting the flip graph technique: a method previously shown to be effective for discovering fast algorithms in the non-commutative case.…

Symbolic Computation · Computer Science 2025-06-30 Isaac Wood

Let {\alpha} be the maximal value such that the product of an n x n^{\alpha} matrix by an n^{\alpha} x n matrix can be computed with n^{2+o(1)} arithmetic operations. In this paper we show that \alpha>0.30298, which improves the previous…

Data Structures and Algorithms · Computer Science 2021-10-05 François Le Gall

In this work the algorithms of fast multiplication of matrices are considered. To any algorithm there associated a certain group of automorphisms. These automorphism groups are found for some well-known algorithms, including algorithms of…

Computational Complexity · Computer Science 2015-08-06 V. P. Burichenko

This paper deals with simultaneously fast and in-place algorithms for formulae where the result has to be linearly accumulated: some of the output variables are also input variables, linked by a linear dependency. Fundamental examples…

Symbolic Computation · Computer Science 2024-07-02 Jean-Guillaume Dumas , Bruno Grenet

In this paper we propose a fast optimization algorithm for approximately minimizing convex quadratic functions over the intersection of affine and separable constraints (i.e., the Cartesian product of possibly nonconvex real sets). This…

Optimization and Control · Mathematics 2015-09-29 Reza Takapoui , Nicholas Moehle , Stephen Boyd , Alberto Bemporad

We show that the product of an nx3 matrix and a 3x3 matrix over a commutative ring can be computed using 6n+3 multiplications. For two 3x3 matrices this gives us an algorithm using 21 multiplications. This is an improvement with respect to…

Computational Complexity · Computer Science 2020-07-28 Andreas Rosowski

Accelerators for sparse matrix multiplication are important components in emerging systems. In this paper, we study the main challenges of accelerating Sparse Matrix Multiplication (SpMM). For the situations that data is not stored in the…

Hardware Architecture · Computer Science 2019-06-04 Pareesa Ameneh Golnari , Sharad Malik

This work focuses on accelerating the multiplication of a dense random matrix with a (fixed) sparse matrix, which is frequently used in sketching algorithms. We develop a novel scheme that takes advantage of blocking and recomputation…

Computational Engineering, Finance, and Science · Computer Science 2024-05-14 Tianyu Liang , Riley Murray , Aydın Buluç , James Demmel

Clustering is one of the most fundamental and important tasks in data mining. Traditional clustering algorithms, such as K-means, assign every data point to exactly one cluster. However, in real-world datasets, the clusters may overlap with…

Machine Learning · Computer Science 2016-02-08 Yangyang Hou , Joyce Jiyoung Whang , David F. Gleich , Inderjit S. Dhillon

The multiplication of a matrix by its transpose, $A^T A$, appears as an intermediate operation in the solution of a wide set of problems. In this paper, we propose a new cache-oblivious algorithm (ATA) for computing this product, based upon…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-10-08 Viviana Arrigoni , Filippo Maggioli , Annalisa Massini , Emanuele Rodolà

Matrix multiplication is a fundamental building block for large scale computations arising in various applications, including machine learning. There has been significant recent interest in using coding to speed up distributed matrix…

Information Theory · Computer Science 2019-05-17 Wei-Ting Chang , Ravi Tandon

Matrix multiplication is the foundation from much of the success from high performance technologies like deep learning, scientific simulations, and video graphics. High level programming languages like Python and R rely on highly optimized…

Performance · Computer Science 2025-09-08 Ethan Davis