TaiChi: A Hybrid Compression Format for Binary Sparse Matrix-Vector Multiplication on GPU
TaiChi: A Hybrid Compression Format for Binary Sparse Matrix-Vector Multiplication on GPU
复制标题
DOI:
10.1109/tpds.2022.3170501
复制
发表时间:
2022
影响因子:
5.3
通讯作者:
Jianhua Gao;Weixing Ji;Zhaonian Tan;Yizhuo Wang;Feng Shi
中科院分区:
文献类型:
--
作者:
Jianhua Gao;Weixing Ji;Zhaonian Tan;Yizhuo Wang;Feng Shi
Binary Sparse Matrix-Vector Multiplication (SpMV) is a heavy computational kernel in weblink analysis, integer factorization, compressed sensing, spectral graph theory, and other domains. Testing several popular GPU-based SpMV implementations on 400 sparse matrices, we observed that data transfer to GPU memory accounts for a large part of the total computation time. The transfer of constant value 1s can be easily eliminated for binary sparse matrices. However, compressing index arrays has always been a great challenge. This paper proposes a new compression format TaiChi to further reduce index data copies and improve the performance of SpMV, especially for diagonally dominant binary sparse matrices. Input matrices are firstly partitioned into relatively dense and ultra-sparse areas. Then the dense areas are encoded inversely by marking ``0"s, while the ultra-sparse area is encoded by marking ``1"s. We also designed a new SpMV algorithm only using addition and subtraction for binary matrices based on our partition and encoding format. Evaluation results on real-world binary sparse matrices show that our hybrid encoding for binary matrix significantly reduces the data transfer and speeds up the kernel execution. It achieves the highest transfer and kernel execution speedups of 5.63x and 3.84x on GTX 1080 Ti, 3.39x and 3.91x on Tesla V100.