{"title":"压缩稀疏-稀疏矩阵积的高效算法研究","authors":"S. Ezouaoui, O. Hamdi-Larbi, Z. Mahjoub","doi":"10.1109/HPCS.2017.101","DOIUrl":null,"url":null,"abstract":"We study the sparse matrix product problem where the input matrices are sparse. Starting with an original DO- loop nest structured algorithm, different versions involving body kernels such as GAXPY, AXPY and DOT are generated by the loop interchange technique. We particularly focus on the GAXPY- Row body kernel where the matrices are acceded row-wise. Various versions corresponding to the most used sparse matrix compression formats are designed. We then derive other versions by applying improving techniques such as loop invariant motion and loop unrolling. A theoretical multi-fold performance study permits to establish accurate comparisons between the different versions. Our contribution is validated through experiments achieved on two input sets i.e. a set of randomly generated matrices and a set of benchmark matrices of different sizes and densities. This permitted to notice that the improvement procedure led to an efficient version dramatically reducing the run time up to 98%. Our algorithms were also compared with kernels from NIST Sparse Blas, CSparse and SPARSKIT2 libraries.","PeriodicalId":115758,"journal":{"name":"2017 International Conference on High Performance Computing & Simulation (HPCS)","volume":"113 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"Towards Efficient Algorithms for Compressed Sparse-Sparse Matrix Product\",\"authors\":\"S. Ezouaoui, O. Hamdi-Larbi, Z. Mahjoub\",\"doi\":\"10.1109/HPCS.2017.101\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"We study the sparse matrix product problem where the input matrices are sparse. Starting with an original DO- loop nest structured algorithm, different versions involving body kernels such as GAXPY, AXPY and DOT are generated by the loop interchange technique. We particularly focus on the GAXPY- Row body kernel where the matrices are acceded row-wise. Various versions corresponding to the most used sparse matrix compression formats are designed. We then derive other versions by applying improving techniques such as loop invariant motion and loop unrolling. A theoretical multi-fold performance study permits to establish accurate comparisons between the different versions. Our contribution is validated through experiments achieved on two input sets i.e. a set of randomly generated matrices and a set of benchmark matrices of different sizes and densities. This permitted to notice that the improvement procedure led to an efficient version dramatically reducing the run time up to 98%. Our algorithms were also compared with kernels from NIST Sparse Blas, CSparse and SPARSKIT2 libraries.\",\"PeriodicalId\":115758,\"journal\":{\"name\":\"2017 International Conference on High Performance Computing & Simulation (HPCS)\",\"volume\":\"113 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2017-07-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2017 International Conference on High Performance Computing & Simulation (HPCS)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/HPCS.2017.101\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 International Conference on High Performance Computing & Simulation (HPCS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HPCS.2017.101","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Towards Efficient Algorithms for Compressed Sparse-Sparse Matrix Product
We study the sparse matrix product problem where the input matrices are sparse. Starting with an original DO- loop nest structured algorithm, different versions involving body kernels such as GAXPY, AXPY and DOT are generated by the loop interchange technique. We particularly focus on the GAXPY- Row body kernel where the matrices are acceded row-wise. Various versions corresponding to the most used sparse matrix compression formats are designed. We then derive other versions by applying improving techniques such as loop invariant motion and loop unrolling. A theoretical multi-fold performance study permits to establish accurate comparisons between the different versions. Our contribution is validated through experiments achieved on two input sets i.e. a set of randomly generated matrices and a set of benchmark matrices of different sizes and densities. This permitted to notice that the improvement procedure led to an efficient version dramatically reducing the run time up to 98%. Our algorithms were also compared with kernels from NIST Sparse Blas, CSparse and SPARSKIT2 libraries.