dorsal/arxiv
View SchemaA Machine Learning Approach Towards Runtime Optimisation of Matrix Multiplication
| Authors | Yufan Xia, Marco De La Pierre, Amanda S. Barnard, Giuseppe Maria Junior Barca |
|---|---|
| Categories | |
| ArXiv ID | 2601.09114vv1 |
| URL | https://arxiv.org/abs/2601.09114 |
| DOI | 10.1109/IPDPS54959.2023.00059 |
| License | http://creativecommons.org/licenses/by/4.0/ |
Abstract
The GEneral Matrix Multiplication (GEMM) is one of the essential algorithms in scientific computing. Single-thread GEMM implementations are well-optimised with techniques like blocking and autotuning. However, due to the complexity of modern multi-core shared memory systems, it is challenging to determine the number of threads that minimises the multi-thread GEMM runtime. We present a proof-of-concept approach to building an Architecture and Data-Structure Aware Linear Algebra (ADSALA) software library that uses machine learning to optimise the runtime performance of BLAS routines. More specifically, our method uses a machine learning model on-the-fly to automatically select the optimal number of threads for a given GEMM task based on the collected training data. Test results on two different HPC node architectures, one based on a two-socket Intel Cascade Lake and the other on a two-socket AMD Zen 3, revealed a 25 to 40 per cent speedup compared to traditional GEMM implementations in BLAS when using GEMM of memory usage within 100 MB.
{
"annotation_id": "b38ddc27-736a-4f07-bc8a-7ce818b4d343",
"date_created": "2026-02-17T05:53:20.056000Z",
"date_modified": "2026-02-17T05:53:20.056000Z",
"file_hash": "ee15c63617465325611f50a21df9f40a25fc3026911d31409b2d8d8acaabdf4d",
"private": false,
"record": {
"abstract": "The GEneral Matrix Multiplication (GEMM) is one of the essential algorithms in scientific computing. Single-thread GEMM implementations are well-optimised with techniques like blocking and autotuning. However, due to the complexity of modern multi-core shared memory systems, it is challenging to determine the number of threads that minimises the multi-thread GEMM runtime. We present a proof-of-concept approach to building an Architecture and Data-Structure Aware Linear Algebra (ADSALA) software library that uses machine learning to optimise the runtime performance of BLAS routines. More specifically, our method uses a machine learning model on-the-fly to automatically select the optimal number of threads for a given GEMM task based on the collected training data. Test results on two different HPC node architectures, one based on a two-socket Intel Cascade Lake and the other on a two-socket AMD Zen 3, revealed a 25 to 40 per cent speedup compared to traditional GEMM implementations in BLAS when using GEMM of memory usage within 100 MB.",
"arxiv_id": "2601.09114",
"authors": [
"Yufan Xia",
"Marco De La Pierre",
"Amanda S. Barnard",
"Giuseppe Maria Junior Barca"
],
"categories": [
"cs.DC",
"cs.LG"
],
"doi": "10.1109/IPDPS54959.2023.00059",
"license": "http://creativecommons.org/licenses/by/4.0/",
"title": "A Machine Learning Approach Towards Runtime Optimisation of Matrix Multiplication",
"url": "https://arxiv.org/abs/2601.09114",
"version": "v1"
},
"schema_id": "dorsal/arxiv",
"source": {
"execution_id": "f85ec772-e05b-465a-8641-4eb04b7ba451",
"id": "arXiv Dataset",
"type": "Model",
"variant": "snapshot-2026-01-17",
"version": "0.1.0"
},
"user_id": 1000002
}