Engineering an Efficient Implementation of Pagh’s Algorithm for Sparse Matrix Multiplication

dc.contributor.authorGe, Shuhao
dc.contributor.authorKliemann, Paul
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data och informationstekniksv
dc.contributor.departmentChalmers University of Technology / Department of Computer Science and Engineeringen
dc.contributor.examinerDamaschke, Peter
dc.contributor.supervisorKarppa, Matti
dc.date.accessioned2025-11-05T12:29:15Z
dc.date.issued2025
dc.date.submitted
dc.description.abstractThis thesis explores approximate matrix multiplication through the algorithm proposed by R. Pagh in Compressed Matrix Multiplication (2013) and its implementation developed by J. Andersson and M. Karppa. We identify memory bandwidth as the primary performance bottleneck and implement support for handling sparse inputs and outputs. We further introduce several optimizations to improve cache utilisation. While fitting the input data into the L3 caches of our CPU did not improve L3 hit rate, it did lead to the improvement in the L1 hit rate compared to the dense implementation. Our experimental evaluation demonstrates modest yet consistent runtime improvements, particularly on large-scale and sparse inputs, while retaining the mathematical guarantees of the original implementation. Despite these optimisations, our implementations remain outperformed by the stateof- the-art libraries on all tested real-world datasets. However, our modifications reduce the asymptotic runtime of the compression step and significantly decrease memory usage when processing sparse matrices. Based on our findings, we suggest potential directions for future research, including further optimization strategies. These should primarily focus on reducing memory traffic, as improvements in memory locality alone are unlikely to yield substantial gains.
dc.identifier.coursecodeDATX05
dc.identifier.urihttp://hdl.handle.net/20.500.12380/310724
dc.language.isoeng
dc.relation.ispartofseriesCSE 25-56
dc.setspec.uppsokTechnology
dc.subjectMatrix Multiplication, Sparse Matrix, High Performance Computing, Fast Fourier Transform, Hashing.
dc.titleEngineering an Efficient Implementation of Pagh’s Algorithm for Sparse Matrix Multiplication
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster's Thesisen
dc.type.uppsokH
local.programmeData science and AI (MPDSC), MSc

Ladda ner

Original bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
CSE 25-56 SG PK.pdf
Storlek:
1.76 MB
Format:
Adobe Portable Document Format

License bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
license.txt
Storlek:
2.35 KB
Format:
Item-specific license agreed upon to submission
Beskrivning: