КОНФЕРЕНЦІЇ ВНТУ електронні наукові видання, 
Молодь в науці: дослідження, проблеми, перспективи (МН-2025)

Розмір шрифта: 
РЕАЛІЗАЦІЯ ПАРАЛЕЛЬНОГО АЛГОРИТМУ ОБЧИСЛЕНЬ ЗАСОБАМИ PYTHON MULTIPROCESSING MODULE
Валерій Олександрович Денисюк, Дмитро Олександрович Блонський

Остання редакція: 2025-02-19

Анотація


Розглянуто застосування multiprocessing для реалізації паралельного алгоритму, зокрема використання об'єктів Process, Pool, механізмів міжпроцесної взаємодії (Queue, Pipe) та засобів синхронізації (Lock, Semaphore). Також проводиться оптимізація паралельного алгоритму шляхом балансування навантаження, зниження комунікаційних витрат, використання асинхронних операцій та аналізу продуктивності. Результати експериментального дослідження показали, що правильно налаштований паралельний алгоритм дозволяє значно підвищити продуктивність у порівнянні з послідовною реалізацією. Запропонований підхід може бути використаний для вирішення різноманітних задач, пов’язаних з обробкою великих масивів даних, машинним навчанням та високопродуктивними обчисленнями.


Ключові слова


паралельні обчислення, Python, multiprocessing, оптимізація алгоритму, балансування навантаження, продуктивність

Посилання


  1. 1.Грама А., Гупта А., Карипис Г., Кумар В. Вступ до паралельних обчислень. Київ: BHV, 2018. 736 с.

 2.Гассан М. Основи розподілених систем і паралельного програмування. Київ: Наукова думка, 2017. 492 с.

 3.Амдал Г. М. Validity of the Single Processor Approach to Achieving Large Scale Computing Capabilities // Proceedings of the April 18-20, 1967, Spring Joint Computer Conference. ACM, 1967. С. 483–485.

 4.Густафсон Д. Reevaluating Amdahl's Law // Communications of the ACM. 1988. Т. 31, № 5. С. 532–533.

 5.Коноваленко І.Ю. Основи паралельного програмування: навч. посіб. Київ: Ліра-К, 2019. 300 с.

 6.Лутц М. Програмування на Python. Київ: Діалектика, 2020. 1600 с.

 7.Python Software Foundation. Python 3.11 Documentation: Multiprocessing. URL: https://docs.python.org/3/library/multiprocessing.html

 8.Баєв О., Краковський, Д. Оптимізація алгоритмів паралельних обчислень на прикладі Python multiprocessing // Сучасні проблеми комп’ютерних наук та інформаційних технологій. 2021. Т. 6, № 1. С. 120–128.

 9.Програмування в Python для наукових обчислень і машинного навчання. Київ: ТОВ "Академперіодика", 2022. 520 с.

 10.Ткаченко М., Бойко А. Python GUI Programming Cookbook. Сучасні методи створення інтерфейсів для програм на Python. Київ: Діалектика, 2021. 450 с.


Повний текст: PDF