ЕФЕКТИВНІСТЬ І БАГАТОПОТОКОВІСТЬ ПАРАЛЕЛЬНИХ ОБЧИСЛЕНЬ У СИСТЕМНОМУ ПРОГРАМУВАННІ
DOI:
https://doi.org/10.32782/tnv-tech.2024.5.6Ключові слова:
паралельні обчислення, багатопотоковість, системне програмування, продуктивність, управління потоками, синхронізація, оптимізація ресурсівАнотація
У роботі досліджується застосування паралельних обчислень у системному програмуванні, зокрема питання багатопотоковості та ефективності. Паралельні обчислення є важливою складовою для підвищення продуктивності в умовах обробки великих обсягів даних та виконання ресурсоємних обчислень. Зі збільшенням кількості ядер у процесорах багатопотоковість стала важливою технологією для розробки високопродуктивного програмного забезпечення. Проте, ефективне використання багатоядерних систем потребує комплексного підходу до управління потоками, синхронізації ресурсів і балансування навантаження. Однією з найбільших проблем у багатопотоковому середовищі є синхронізація процесів, яка може призвести до блокування ресурсів, що негативно впливає на продуктивність. Крім того, у статті розглядаються підходи до управління потоками, такі як розподіл завдань між ядрами та динамічне балансування навантаження, які дозволяють підвищити ефективність паралельних обчислень. Особлива увага приділяється методам уникнення конфліктів під час доступу до спільних ресурсів, а також використанню сучасних бібліотек і технологій, що спрощують реалізацію паралельних алгоритмів у системному програмуванні. Окремо проаналізовано ризики, пов'язані з використанням багатопотоковості, зокрема виникнення помилок синхронізації, що можуть впливати на стабільність програмного забезпечення. Це дослідження є корисним для ІТ-розробників, які прагнуть глибше зрозуміти принципи багатопотоковості та шляхи оптимізації обчислювальних процесів. Стаття надає огляд сучасних технологій і засобів, що використовуються для забезпечення ефективності у паралельних обчисленнях, і висвітлює основні принципи побудови багатопотокових програм. Висновки роботи демонструють необхідність зваженого підходу до реалізації багатопотокових систем, враховуючи апаратні обмеження, специфіку операційних систем і потенційні проблеми синхронізації, щоб уникнути негативного впливу на продуктивність.
Посилання
Дивак М., Кіндзерський О. "Дослідження ефективності паралельної обчислювальної схеми ідентифікації інтервальних дискретних моделей на основі ройового інтелекту". Herald of Khmelnytskyi National University. Technical Sciences, 2024, 331(1), pp. 29-37. https://doi.org/10.31891/2307-5732-2024-331-3
Васильченко І. П. Сачанюк-Кавецька Н.В., Бараненко Р.В. Технології розподільних систем та паралельних обчислень. Measuring and computing devices in technological processes, 2021, no 1, p. 16-25. https:// DOI: 10.31891/2219-9365-2020-67-1-3
Яровий А. А. Методи та засоби організації високопродуктивних паралельно-ієрархічних обчислювальних систем із рекурсивною архітектурою. Монографія. Вінниця : ВНТУ, 2016. – 363 с. ISBN 978-966-641-681-3
Pieter Koopman, Steffen Michels, and Rinus Plasmeijer Dynamic Editors for Well-Typed Expressions. Trends in Functional programming/ 22nd international Symposium, TFP 2021, February 17-19, 2021/ Springer, LNCS 12834, pр. 44-66.
Abhishek Shukla Introducing Multi-Threaded Programming in Parallel Programming Process for Optimal Performance Results. Journal of Mathematical & Computer Applications. SRC/JMCA-161. 2023. DOI: doi.org/10.47363/JMCA/2023(2)132
Гоменюк С. І., Чопоров С. В., Лісняк А. О., Кудін О. В., Гребенюк С. М. Системне програмування: розробка багатопотокових програм в операційній системі Linux: навчальний посібник для здобувачів ступеня вищої освіти бакалавра спеціальності “Інформаційні системи та технології” освітньопрофесійної програми “Інформаційні системи та технології”. Запоріжжя: Запорізький національний університет, 2021. 120 с.