Next Article in Journal
Regime Tracking in Markets with Markov Switching
Previous Article in Journal
Fuzzy Logic Model for Assessing Accident Proneness Based on Passenger Vehicle Speed in Real and Virtual Traffic Conditions
Previous Article in Special Issue
Nine-Stage Runge–Kutta–Nyström Pairs Sharing Orders Eight and Six
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Multithreaded Reproducible Banded Matrix-Vector Multiplication

College of Computer Science and Technology, National University of Defense Technology, Changsha 410073, China
*
Author to whom correspondence should be addressed.
Mathematics 2024, 12(3), 422; https://doi.org/10.3390/math12030422
Submission received: 26 November 2023 / Revised: 26 December 2023 / Accepted: 11 January 2024 / Published: 28 January 2024
(This article belongs to the Special Issue Numerical Analysis and Scientific Computing, 3rd Edition)

Abstract

Reproducibility refers to getting bitwise identical floating point results from multiple runs of the same program, is an important basis for debugging or correctness checking in many codes. However the round-off error and non-associativity of floating point makes attaining reproducibility a challenge in large-scale, long-term parallel computing or solving ill conditioned problems. The dgbmv performs general banded matrix-vector multiplication for double precision, is the most basic Level-2 operation in BLAS. First, we designed a reproducible algorithm for banded matrix-vector multiplication repro_dgbmv based on the technique of error-free transformation. Then the error of the algorithm is analyzed. Second, the algorithm is parallelized into repro_dgbmv_thread on ARM and x86 platforms. The numerical test results verify that repro_dgbmv_thread is reproducible and has higher accuracy than ordinary dgbmv. In numerical experiments on ARM platform, as the number of threads increases from 1 to 8, the run time of this algorithm is reduced by 5.2–7 times, while the run time of multithreaded dgbmv is only reduced by 2.2–3.8 times. In numerical experiments on x86 platform, as the number of threads increases from 1 to 15, the run time of this algorithm is reduced by 7.7–10.6 times, while the run time of multithreaded dgbmv is only reduced by 4.2–6.8 times.
Keywords: reproducibility; multithreading; banded matrix; matrix-vector multiplication reproducibility; multithreading; banded matrix; matrix-vector multiplication

Share and Cite

MDPI and ACS Style

Tang, T.; Qi, H.; Lu, Q.; Jiang, H. Multithreaded Reproducible Banded Matrix-Vector Multiplication. Mathematics 2024, 12, 422. https://doi.org/10.3390/math12030422

AMA Style

Tang T, Qi H, Lu Q, Jiang H. Multithreaded Reproducible Banded Matrix-Vector Multiplication. Mathematics. 2024; 12(3):422. https://doi.org/10.3390/math12030422

Chicago/Turabian Style

Tang, Tao, Haijun Qi, Qingfeng Lu, and Hao Jiang. 2024. "Multithreaded Reproducible Banded Matrix-Vector Multiplication" Mathematics 12, no. 3: 422. https://doi.org/10.3390/math12030422

APA Style

Tang, T., Qi, H., Lu, Q., & Jiang, H. (2024). Multithreaded Reproducible Banded Matrix-Vector Multiplication. Mathematics, 12(3), 422. https://doi.org/10.3390/math12030422

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop