Sparse Matrix Implementation in Octave
David Bateman, Andy Adler

TL;DR
This paper details the implementation of sparse matrices in Octave, including storage, algorithms, and operations, with benchmarking against Matlab and a real finite element model example.
Contribution
It introduces a comprehensive sparse matrix implementation in Octave, covering storage, algorithms, and integration with oct-files, filling a gap in Octave's capabilities.
Findings
Octave's sparse matrix operations are comparable to Matlab's in performance.
The implementation improves memory efficiency for large, sparse matrices.
Real-world FEM problem demonstrates practical use of sparse matrices in Octave.
Abstract
There are many classes of mathematical problems which give rise to matrices, where a large number of the elements are zero. In this case it makes sense to have a special matrix type to handle this class of problems where only the non-zero elements of the matrix are stored. Not only does this reduce the amount of memory to store the matrix, but it also means that operations on this type of matrix can take advantage of the a-priori knowledge of the positions of the non-zero elements to accelerate their calculations. A matrix type that stores only the non-zero elements is generally called sparse. Until recently Octave has lacked a full implementation of sparse matrices. This article address the implementation of sparse matrices within Octave, including their storage, creation, fundamental algorithms used, their implementations and the basic operations and functions implemented for sparse…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsVLSI and FPGA Design Techniques · Numerical Methods and Algorithms · Embedded Systems Design Techniques
