English
Related papers

Related papers: The Ubiquitous Sparse Matrix-Matrix Products

200 papers

We present a distributed-memory library for computations with dense structured matrices. A matrix is considered structured if its off-diagonal blocks can be approximated by a rank-deficient matrix with low numerical rank. Here, we use…

Mathematical Software · Computer Science 2015-06-29 François-Henry Rouet , Xiaoye S. Li , Pieter Ghysels , Artem Napov

Graph-based representations underlie a wide range of scientific problems. Graph connectivity is typically represented as a sparse matrix in the Compressed Sparse Row format. Large-scale graphs rely on distributed storage, allocating…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-12-14 Bruno Magalhaes , Felix Schürmann

General Sparse Matrix-Matrix Multiplication (SpGEMM) has attracted much attention from researchers in graph analyzing, scientific computing, and deep learning. Many optimization techniques have been developed for different applications and…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-07-12 Jianhua Gao , Weixing Ji , Fangli Chang , Shiyu Han , Bingxin Wei , Zeming Liu , Yizhuo Wang

A fast algorithm for the approximate multiplication of matrices with decay is introduced; the Sparse Approximate Matrix Multiply (SpAMM) reduces complexity in the product space, a different approach from current methods that economize…

Data Structures and Algorithms · Computer Science 2010-11-17 Matt Challacombe , Nicolas Bock

In recent years, a large amount of multi-disciplinary research has been conducted on sparse models and their applications. In statistics and machine learning, the sparsity principle is used to perform model selection---that is,…

Computer Vision and Pattern Recognition · Computer Science 2014-12-09 Julien Mairal , Francis Bach , Jean Ponce

Tensor accelerators have gained popularity because they provide a cheap and efficient solution for speeding up computational-expensive tasks in Deep Learning and, more recently, in other Scientific Computing applications. However, since…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-02-15 Paolo Sylos Labini , Massimo Bernaschi , Francesco Silvestri , Flavio Vella

Sparse data structures are commonly used in neural networks to reduce the memory footprint. These data structures are compact but cause irregularities such as random memory accesses, which prevent efficient use of the memory hierarchy. GPUs…

Programming Languages · Computer Science 2025-06-19 Hossein Albakri , Kazem Cheshmi

This is the second of two papers to describe a matrix sparsification algorithm that takes a general real or complex matrix as input and produces a sparse output matrix of the same size. The first paper presented the original algorithm, its…

Numerical Analysis · Mathematics 2013-04-29 Chetan Jhurani

The nonnegative matrix factorization is a widely used, flexible matrix decomposition, finding applications in biology, image and signal processing and information retrieval, among other areas. Here we present a related matrix factorization.…

Machine Learning · Statistics 2017-12-12 David W Dreisigmeyer

We propose different implementations of the sparse matrix--dense vector multiplication (\spmv{}) for finite fields and rings $\Zb/m\Zb$. We take advantage of graphic card processors (GPU) and multi-core architectures. Our aim is to improve…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-09-09 Brice Boyer , Jean-Guillaume Dumas , Pascal Giorgi

Partitioning large matrices is an important problem in distributed linear algebra computing (used in ML among others). Briefly, our goal is to perform a sequence of matrix algebra operations in a distributed manner (whenever possible) on…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-06-30 Avah Banerjee , Guoli Ding , Maxwell Reeser

We revisit the matrix problems sparse null space and matrix sparsification, and show that they are equivalent. We then proceed to seek algorithms for these problems: We prove the hardness of approximation of these problems, and also give a…

Computational Complexity · Computer Science 2010-08-10 Lee-Ad Gottlieb , Tyler Neylon

We present an approximate algorithm for matrix multiplication based on matrix sketching techniques. First one of the matrix is chosen and sparsified using the online matrix sketching algorithm, and then the matrix product is calculated…

Numerical Analysis · Computer Science 2014-06-12 Huan Wang , Christos Boutsidis , Edo Liberty , Daniel Hsu

Sparse matrix-matrix multiplication (SpGEMM) is a critical operation in numerous fields, including scientific computing, graph analytics, and deep learning. These applications exploit the sparsity of matrices to reduce storage and…

Machine Learning · Computer Science 2024-08-30 Sanjali Yadav , Bahar Asgari

Multiplying matrices is among the most fundamental and compute-intensive operations in machine learning. Consequently, there has been significant work on efficiently approximating matrix multiplies. We introduce a learning-based algorithm…

Machine Learning · Computer Science 2021-08-17 Davis Blalock , John Guttag

Matrix completion constantly receives tremendous attention from many research fields. It is commonly applied for recommender systems such as movie ratings, computer vision such as image reconstruction or completion, multi-task learning such…

Machine Learning · Computer Science 2019-10-08 Abdallah Chehade , Zunya Shi

This paper addresses spatial programming of sparse matrix computations for productive performance. The challenge is how to express an irregular computation and its optimizations in a regular way. A sparse matrix has (non-zero) values and a…

Mathematical Software · Computer Science 2018-10-18 Hongbo Rong

Sparse non-Hermitian random matrices arise in the study of disordered physical systems with asymmetric local interactions, and have applications ranging from neural networks to ecosystem dynamics. The spectral characteristics of these…

Statistical Mechanics · Physics 2024-02-21 Fernando Lucas Metz , Izaak Neri , Tim Rogers

We develop and implement in this paper a fast sparse assembly algorithm, the fundamental operation which creates a compressed matrix from raw index data. Since it is often a quite demanding and sometimes critical operation, it is of…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-04-28 Stefan Engblom , Dimitar Lukarski

Multiplying two sparse matrices (SpGEMM) is a common computational primitive used in many areas including graph algorithms, bioinformatics, algebraic multigrid solvers, and randomized sketching. Distributed-memory parallel algorithms for…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-08-28 Yuxi Hong , Aydin Buluc