Fast and Efficient Kronecker Multiplication
No License
Computing the matrix-vector product
y = (Q1 kron Q2 kron ... kron Qm) * x
can be done without ever forming the big matrix of Kronecker products. This m-file implements an algorithm for this task from page 394 of Fernandes, et al. 1998, JACM 45(3): 381--414 (doi:10.1145/278298.278303). The implementation works where X is a matrix too.
Don't be scared off by the for-loops, this code works well with the Matlab JIT compiler and works for vectors with over 50 million entries.
Cite As
David Gleich (2026). Fast and Efficient Kronecker Multiplication (https://www.mathworks.com/matlabcentral/fileexchange/23606-fast-and-efficient-kronecker-multiplication), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired: Fast Kronecker matrix multiplication, Matrix times array
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
