Reference:
Pekunov V.V..
Improved CPU load balancing for numerical solution of the tasks of continuous medium mechanics complicated by chemical kinetics
// Cybernetics and programming.
2021. № 1.
P. 13-19.
DOI: 10.25136/2644-5522.2021.1.35101 URL: https://en.nbpublish.com/library_read_article.php?id=35101
Abstract:
This article explores certain aspects of the process of numerical solution of the tasks of continuous medium mechanics in the conditions of ongoing chemical reactions. Such tasks are usually characterized by the presence of multiple local areas with elevated temperature, which position in space is relatively unstable. In such conditions, rigidly stable methods of integration with step control, which in the “elevated temperature” areas that have higher time input comparing to other areas. In terms of using geometric parallelism, this fact leads to substantial imbalance of CPU load, which reduces the overall effectiveness of parallelization. Therefore, this article examines the problem of CPU load balancing in the context of parallel solution of the aforementioned tasks. The other offers a new modification of the algorithm of large-block distributed balancing with improved time prediction of the numerical integration of chemical kinetics equations, which is most effective in the conditions of drift of the areas with “elevated temperatures”. The improvement consists in application of the linear perceptron, which analyzes several previous values of time integration (the basic version of the algorithm uses only one previous spot from the history of time integration). This allows working in the conditions of fast and slow drift of the areas with “elevated temperatures”. The effectiveness of this approach is demonstrated on the task of modeling the flow-around the building with high-temperature combustion on its roof. It is indicated that the application of modified algorithm increases the effectiveness of parallelization by 2.1% compared to the initial algorithm.
Keywords:
numerical simulation, distributed balancing, continuous medium mechanics, chemical kinetics, linear perceptron, load balancing, parallel computations, numerical experiment, approbation, geometrical parallelizing
Reference:
Pekunov V.V..
Application of prediction in parallel processing of chains of predicates in regular-logic expressions
// Cybernetics and programming.
2018. № 6.
P. 48-55.
DOI: 10.25136/2644-5522.2018.6.27986 URL: https://en.nbpublish.com/library_read_article.php?id=27986
Abstract:
This paper addresses the problem of choosing the execution mode (sequential or parallel) when processing chains of predicates in regular-logic expressions. A brief description of the essence of regular-logical expressions, their known applications (natural language interfaces, automatic parallelizer of C-programs), types and composition of predicate chains is given. Particular attention is paid to the question of the prediction of time spent on processing chains in one mode or another. Various approaches to such a possible prediction are considered in detail. It is noted that in this case the semi-empirical-statistical approach is the most natural. The paper uses the basic relations of the theory of parallel computing, interpolation and extrapolation methods, computational experiment, elements of statistical processing. A new semi-empirical-statistical approach to solving the problem of calculating estimates of the execution time of chains of predicates is proposed. The approach is distinguished by the minimum amount of time measurement achieved using partial recovery of missing data, and the use of potentially more accurate linear autoregressive and quadratic models to calculate the estimated execution time in sequential or parallel modes.
Keywords:
collection of statistical data, prediction, parallel processing, execution mode selection, predicate's chains, logical handling, regular-logical expressions, absent data creation, semi-empirical estimations, calculating study
Reference:
Sechenov P., Olennikov A.A..
Application of NVIDIA CUDA parallel programming technology in the task of melting a spherical particle
// Cybernetics and programming.
2018. № 5.
P. 8-14.
DOI: 10.25136/2644-5522.2018.5.20345 URL: https://en.nbpublish.com/library_read_article.php?id=20345
Abstract:
The article describes the NVIDIA CUDA parallel programming technology used in the task of melting a spherical particle. The tendency of modern computers to increase power by increasing the number of cores, and not by increasing the frequency of the processor (which leads to significant energy consumption and heat generation). The Amdal law is presented, allowing to estimate the acceleration of the program time when parallelized on N processors. The conditions for increasing the performance of the algorithm in parallelizing tasks are listed. The task of melting iron ore particles is presented. The features of the parallel programming language CUDA C are considered and the algorithms for the selected task are presented. A comparative analysis of the task execution time on the CPU (C #) and GPU (CUDA C) has been made. The technology of parallel programming CUDA allows you to increase the performance of parallelized algorithms of complexity N up to 60 times. This requires the presence of a graphics processor supporting this technology, the development environment and the CUDA compiler, knowledge of the CUDA C language, as well as a good knowledge of the task and the possibility of its parallelization.
Keywords:
Amdahl's law, C# language, CUDA C language, melting particles, CPU, GPU, parallel programming, algorithm performance, lead time, high-level language