Method of managing the execution of tasks of a multithreaded program according to a given dependency graph

Performance is one of the main non-functional requirements for software. As a result of the increase in the number of cores in central processing units in recent decades, the use of multithreading technology has become a primary means of improving software performance. This study analyzes the proble...

Full description

Saved in:
Bibliographic Details
Date:2024
Main Authors: Nesterenko, K.P., Stetsenko, I.V.
Format: Article
Language:Ukrainian
Published: PROBLEMS IN PROGRAMMING 2024
Subjects:
Online Access:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/642
Tags: Add Tag
No Tags, Be the first to tag this record!
Journal Title:Problems in programming
Download file: Pdf

Institution

Problems in programming
Description
Summary:Performance is one of the main non-functional requirements for software. As a result of the increase in the number of cores in central processing units in recent decades, the use of multithreading technology has become a primary means of improving software performance. This study analyzes the problems that arise from developing multithreaded programs and ways to address them. A method for managing the execution of tasks in a multithreaded program based on a given dependency graph is proposed and its implementation in the C++ language is demonstrated. Its aim is to reduce the resource intensity of software development and increase its reliability by addressing problems typical of developing multithreaded programs. The results of experimental research on a test set of tasks are provided, demonstrating increased performance through the use of the proposed method.Prombles in programming 2024; 2-3: 239-246