EVALUATION OF THE EFFICIENCY OF THE IMPLEMENTATION OF PARALLEL COMPUTATIONAL ALGORITHMS USING THE <thread> LIBRARY IN C++
DOI:
https://doi.org/10.31891/csit-2022-3-6Keywords:
computational algorithm, numerical solution of SLAE, sweep method, performance, parallel computation, thread, computation acceleration, multithreadingAbstract
Progressive hardware and software mean of paralleling and synchronization of calculations on modern computers with multicore architecture allow to increase the efficiency of computer modeling by increasing (by an order or more) the performance of calculations. The purpose of this work is to increase the efficiency of computational algorithms for the computer implementation of the sweep method by using modern advanced parallel programming techniques. The study used methods of matrix algebra, parallel computations, as well as analysis of the efficiency of algorithms and programs. As a result of the work, computational algorithms for sequential and parallelized in two threads sweep method were developed, and a comparative evaluation of the effectiveness of their implementation by means of thread control library <thread> C++ was performed. The order of SLAE in this case was up to 5×107. As a result of computational experiments, it was possible to achieve an increase in computational speed of 1.88-2.86 times. The results obtained correspond with similar data from available literature sources. The scientific novelty of the work lies in the subsequent development of promising approaches to increase the efficiency of computer simulation through the use of modern technologies and principles of parallel programming with computational experiments on modern hardware and software architectures. For the first time, estimates of the time of software implementation of algorithms for sequential and parallelized by means of the <thread> C++ library computational algorithms for the sweep method for a significant order of SLAE were obtained. The expediency of this paralleling is demonstrated for SLAEs of the order over 2.5×105. The main significance of the work lies in the practical application of the results obtained in computer simulation of engineering problems, the most resource-intensive stage of which is the multiple solution of SLAE of a significant order. Further prospects of research assume in-depth paralleling of algorithms for numerical solution of SLAE by using scalable variations of applied methods, choosing the most productive software technologies, paralleling the program code to the maximum (in terms of the number of processor cores) number of threads.