Автоматизоване проектування програм для платформи .net, що використовують бібліотеку паралельних задач - Дорошенко, А.Ю.; Яценко, О.А. (Проблеми програмування, 2020)
Виконане налаштування алгебро-алгоритмічного інструментарію на формалізоване проектування та синтез паралельних програм мовою C# для платформи .NET, що використовують засоби бібліотеки паралельних задач TPL. Згадана бібліотека підвищує продуктивність праці розробників за рахунок спрощення процедури додавання паралелізму в програму та динамічно масштабує ступінь паралелізму для найбільш ефективного використання усіх доступних процесорів. В основу пропонованого підходу покладені мова САА-схем, перевагою якої є простота в навчанні й використанні, а також метод конструювання синтаксично правильних програм, що виключає можливість появи синтаксичних помилок у процесі проектування схем. Проведено експеримент з виконання згенерованих за допомогою розробленого інструментарію прикладів паралельних програм на багатоядерному процесорі. Необходимость в повышении производительности программного обеспечения для решения трудоемких задач, с одной стороны, и новые возможности распараллеливания вычислений, предоставляемые многоядерной архитектурой современных микропроцессоров, с другой, побуждает к созданию специализированных инструментальных средств для разработки параллельных программ для таких архитектур. Одним из способов дальнейшего повышения эффективности многопоточных программ, разработанных на платформе .NET, является использование библиотеки параллельных задач TPL. В статье выполнено дальнейшее развитие ранее разработанного алгебро-алгоритмического инструментария в направлении формализованного проектирования и синтеза параллельных программ на языке C#, использующих средства TPL. Упомянутая библиотека повышает производительность труда разработчиков за счет упрощения процедуры добавления параллелизма в программу и динамически масштабирует степень параллелизма для наиболее эффективного использования всех доступных процессоров. В основу предлагаемого подхода положены язык систем алгоритмических алгебр Глушкова и метод конструирования синтаксически правильных программ, который исключает возможность появления синтаксических ошибок в процессе проектирования схем. Проведен эксперимент по выполнению сгенерированных с помощью разработанного инструментария примеров параллельных программ на многоядерном процессоре. 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.