Engineering an Efficient Implementation of Pagh’s Compressed Matrix Multiplication Algorithm

dc.contributor.authorSCHIAVONE, LUKAS
dc.contributor.authorTORPHAGE, FILIP
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-01-08T12:23:11Z
dc.date.available2025-01-08T12:23:11Z
dc.date.issued2024
dc.date.submitted
dc.description.abstractMatrix multiplication is a foundational operation in many fields of science such as machine learning, scientific computing and statistics. Simultaneously, matrix multiplication is an expensive operation to perform, with the mathematical definition requiring O(n3) arithmetic operations to compute all the elements in a product of two matrices. In this thesis we implement the algorithm for approximating matrix multiplication described in Rasmus Pagh’s paper Compressed Matrix Multiplication (2013) in C++. The performance of the implementation of the algorithm is evaluated for different sizes of input matrices as well as varying input parameters and using different classes of hash functions. The results show that due to having a lower asymptotic complexity than traditional matrix multiplication methods, our implementation will regardless of the input parameters eventually be faster. The input parameters used will determine at which point this will occur. We also measure the degree of parallelism available in Pagh’s algorithm in this thesis and present the results in graphs to show the performance gained from increasing the number of utilized cores. In addition, we have applied our implementation to the problem of calculating sample covariance matrices and studied which values of the input parameters are suitable for this problem. The accuracy of the approximations of Pagh’s algorithm for computing sample covariance matrices are measured for varying parameters to determine this. Keywords:
dc.identifier.coursecodeDATX05
dc.identifier.urihttp://hdl.handle.net/20.500.12380/309061
dc.language.isoeng
dc.setspec.uppsokTechnology
dc.subjectAlgorithms
dc.subjectrandomized algorithms
dc.subjectsketching
dc.subjectmatrix multiplication
dc.subjectC++
dc.titleEngineering an Efficient Implementation of Pagh’s Compressed Matrix Multiplication Algorithm
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster's Thesisen
dc.type.uppsokH
local.programmeComputer science – algorithms, languages and logic (MPALG), MSc
Ladda ner
Original bundle
Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
CSE 24-57 LS FT.pdf
Storlek:
1.32 MB
Format:
Adobe Portable Document Format
Beskrivning:
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: