COMPARISON OF VARIANTS OF MULTITHREADING REALIZATION OF METHOD OF BRANCHES AND BORDERS FOR MULTI-CORE SYSTEMS
Journal Title: Современные информационные технологии и ИТ-образование - Year 2018, Vol 14, Issue 1
Abstract
Recently, the main way to improve the performance of computing devices has become an increase in the number of processing cores in the processors, wherefore systems with shared memory have become widespread. Therefore, the development of parallel applications oriented to multi-core systems with shared memory becomes particularly topical. The article considers one of the classes of resource-intensive applications - the task of finding a global extremum of functions of several variables. One of the main approaches to solving such problems is the branch and boundary method. It is distinguished by the following features, essential from the point of view of parallelization: an unknown information graph in advance and the need to exchange information between computational threads. The article suggests several approaches to parallelizing the method of branches and boundaries. Currently, there are several standards for creating multi-threaded applications. The paper considers two such standards: OpenMP and C ++ 14. The OpenMP standard is characterized by higher development speed, but less flexible with respect to multithreaded extensions of C ++ 14, which allows you to vary the different modes of synchronization. We compare these approaches, as well as investigate the impact of various ways of organizing the computing process on application performance. The paper describes the algorithms and their software implementations. A technique for performing experimental studies on the performance of developed applications has been developed, which compares the proposed parallel algorithms on a representative set of test cases. It is shown that all the approaches considered lead to an acceleration of computations in comparison with the sequential variant. The best results are provided by the use of atomic variables for the interaction of threads. As computing platforms for conducting experiments, modern high-performance computing systems were used.
Authors and Affiliations
Andrei Gorchakov, Michael Posypkin
ON PATTERNS FOR THE USE OF RAILWAY STATIONS
Transport (smart transport) is one of the main components of the Smart City. Accordingly, much attention is paid to the analysis and planning of transport (traffic flows) in cities. Naturally, any analysis should be base...
UML-SPECIFICATION OF COMPUTERIZED ENVIRONMENT FOR TEACHING OF SOFTWARE ENGINEERING
A generalized model of knowledge transferring on main areas of software engineering from a lecturer to the discipuli is represented in UML-notation as basis for design and construction of computerized environment for con...
ESTIMATION METHODOLOGY OF THE LANGUAGE IDENTIFICATION RESULTS
The article presents the author's methodology for evaluating the language identification results, developed in the course of experimental research and showing the effectiveness of appropriate methods, technologies, algor...
THEORETICALLY UNBREAKABLE CIPHERS AS THEY SHOULD BE UNDERSTOOD
Perfectly-secret ciphers according to the Claude Shannon's theory, which are considered as unbreakable, and more specifically random keystream ciphers, are discussed. An analysis of the sources mentioned in the reference...
CONVERGENT TECHNOLOGIES FOR CLUSTERS' EQUILIBRIUM PROPERTIES COGNITION
The paper reflects the real gases properties convergent analysis utilization for clusters' properties and structure cognition. Experimental data are from the NIST, USA, Webbook on Thermophysical Properties of Fluid Syste...