Automated design of programs for .NET platform using Task Parallel Library

The necessity to improve the performance of software solving labour-intensive tasks, on the one hand, and new capabilities provided by multicore architecture of contemporary microprocessors, on the other, encourages the development of specialized software tools for automated development of parallel...

Full description

Saved in:
Bibliographic Details
Date:2020
Main Authors: Doroshenko, А.Yu., Yatsenko, O.A.
Format: Article
Language:Ukrainian
Published: PROBLEMS IN PROGRAMMING 2020
Subjects:
Online Access:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/387
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:The necessity to improve the performance of software solving labour-intensive tasks, on the one hand, and new capabilities provided by multicore architecture of contemporary microprocessors, on the other, encourages the development of specialized software tools for automated development of parallel programs for such architectures. Further progress in improving the efficiency of multithreaded programs on .NET platform is using the task parallel library TPL. The paper proposes the further development of previously developed algebra-algorithmic tools in the direction of formalized design and synthesis of C# programs using TPL. The library raises the labour productivity of developers by simplifying the procedure of adding parallelism to a program and dynamically scales parallelism level to use all available processors in the most efficient way. The proposed approach uses high-level language based on Glushkov’s system of algorithmic algebra and the method of designing syntactically correct programs that excludes the possibility of appearance of syntactic errors during scheme design. The results of the experiment consisting in executing examples of generated parallel programs on a multicore processor are given.Problems in programming 2020; 1: 17-24