ВОЗМОЖНОСТИ ПРИМЕНЕНИЯ ПАРАЛЛЕЛЬНОГО ПРОГРАММИРОВАНИЯ С ПОМОЩЬЮ ЯЗЫКА PYTHON

53 75

Авторы

  • Н.М. Жунисов Международный казахско-турецкий университет имени Х.А.Ясави
  • А.Т. Баялы Международный казахско-турецкий университет имени Х.А.Ясави
  • Е.Т. Сатыбалды Международный казахско-турецкий университет имени Х.А.Ясави

Ключевые слова:

Python, параллель, параллелизм, параллельное программирование, информационные технологии, потоки, процессы.

Аннотация

. В этой статье исследуется разработка параллельных программных приложений с использованием языка программирования Python. Параллельное программирование становится все более важным в мире информационных технологий, поскольку многоядерные процессоры и распределенные вычисления становятся все более распространенными. Python предоставляет разработчикам множество инструментов и библиотек для создания параллельных приложений, включая потоки (threads), процессы (processes), и асинхронное программирование.

Эта тема охватывает основы параллельного программирования в Python, включая принципы управления потоками и процессами, обработку ошибок, механизмы синхронизации и управление ресурсами. Он также рассматривает асинхронное программирование с использованием библиотеки asyncio, которая позволяет эффективно обрабатывать асинхронные задачи.

Кроме того, эта тема поднимает вопросы оптимизации и профилирования параллельных приложений, а также исследует распределенное параллельное программирование с использованием сторонних библиотек и фреймворков. Он также подчеркивает важность тестирования и отладки в контексте параллельного программирования.

Исследования и эксперименты в области параллельного программирования с использованием Python помогают разработчикам создавать высокопроизводительные и эффективные приложения, которые могут эффективно использовать многоядерные системы и распределенные вычисления.

В этой статье предлагается углубленное исследование, в котором рассматривается, насколько язык Python подходит для обучения параллельному программированию неопытных студентов. Результаты показывают, что существуют препятствия, которые мешают Python сохранять свои преимущества при переходе от последовательного программирования к параллельному.

Библиографические ссылки

Jan Palach. Parallel Programming with Python. Packt Publishing. July 14, 2014. 124 pages

Лупин, С.А. Технологии параллельного программирования / С.А. Лупин. - М.: Форум, 2018.-402c.

Тормасов, А.Г. Параллельное программирование многопоточных систем с разделяемой памятью / А.Г. Тормасов. - М.: Физматкнига,2020.-296с.

L. Dalcin and Y.-L. L. Fang, mpi4py: Status Update After 12 Years of Development, Computing in Science & Engineering, 23(4):47-54, 2021.

https://doi.org/10.1109/MCSE.2021.3083216

L. Dalcin, P. Kler, R. Paz, and A. Cosimo, Parallel Distributed Computing using Python, Advances in Water Resources, 34(9):1124-1139, 2011.

https://doi.org/10.1016/j.advwatres.2011.04.013

L. Dalcin, R. Paz, M. Storti, and J. D’Elia, MPI for Python: performance improvements and MPI-2 extensions, Journal of Parallel and Distributed Computing, 68(5):655-662, 2008.

https://doi.org/10.1016/j.jpdc.2007.09.005

L. Dalcin, R. Paz, and M. Storti, MPI for Python, Journal of Parallel and Distributed Computing, 65(9):1108-1115, 2005.

https://doi.org/10.1016/j.jpdc.2005.03.010

Лагунова А. Д. Параллельные вычисления как способ повышения эффективности алгоритма летучих мышей. // Сборник статей IX Международной научно-практической конференции «Инновационное развитие науки и образования».— 2020.— С. 78–87

Лагунова А.Д., Назаров Д. А. Параллельный алгоритм решения задачи оптимального параметрического синтеза на основе метода сеток. // Труды Международного симпозиума «Надежность и качество».— 2018.— Т.1.— С. 255–258

Andrews, G. R.Fundamentals of multithreaded, parallel and distributed programming, Moscow: Williams, 2003.

Златопольский Д.М. Основы программирования на языке Python. - М.: ДМК Пресс, 2017. – 284 с.

Шелудько, В. М. Основы программирования на языке высокого уровня Python: учебное пособие / В. М. Шелудько. – Ростов-на-Дону, Таганрог: Издательство Южного федерального университета, 2017. – 146 c.

Jan Palach. Parallel Programming with Python. Packt Publishing. July 14, 2014. 124 pages

Lupin, S.A. Tekhnologii parallel'nogo programmirovaniya / S.A. Lupin. - M.: Forum, 2018. - 402 c.

Tormasov, A.G. Parallel'noe programmirovanie mnogopotochnyh sistem s razdelyaemoj pamyat'yu / A.G. Tormasov. - M.: Fizmatkniga, 2020. - 296 c.

L. Dalcin and Y.-L. L. Fang, mpi4py: Status Update After 12 Years of Development, Computing in Science & Engineering, 23(4):47-54, 2021. https://doi.org/10.1109/MCSE.2021.3083216

L. Dalcin, P. Kler, R. Paz, and A. Cosimo, Parallel Distributed Computing using Python, Advances in Water Resources, 34(9):1124-1139, 2011. https://doi.org/10.1016/j.advwatres.2011.04.013

L. Dalcin, R. Paz, M. Storti, and J. D’Elia, MPI for Python: performance improvements and MPI-2 extensions, Journal of Parallel and Distributed Computing, 68(5):655-662, 2008. https://doi.org/10.1016/j.jpdc.2007.09.005

L. Dalcin, R. Paz, and M. Storti, MPI for Python, Journal of Parallel and Distributed Computing, 65(9):1108-1115, 2005. https://doi.org/10.1016/j.jpdc.2005.03.010

Lagunova A. D. Parallel'nye vychisleniya kak sposob povysheniya effektivnosti algoritma letuchih myshej (BA) / A. D. Lagunova // Sbornik statej IX Mezhdunarodnoj nauchno-prakticheskoj konferencii «Innovacionnoe razvitie nauki i obrazovaniya».— 2020.— S. 78–87

Lagunova A.D., Nazarov D. A. Parallel'nyj algoritm resheniya zadachi optimal'nogo parametricheskogo sinteza na osnove metoda setok // Trudy Mezhdunarodnogo simpoziuma «Nadezhnost' i kachestvo».— 2018.— T. 1.— S. 255–258

Andrews, G. R.Fundamentals of multithreaded, parallel and distributed programming, Moscow: Williams, 2003.

Zlatopol'skij D.M. Osnovy programmirovaniya na yazyke Python. – M.: DMK Press, 2017. – 284 s.

SHelud'ko, V. M. Osnovy programmirovaniya na yazyke vysokogo urovnya Python: uchebnoe posobie / V. M. SHelud'ko. – Rostov-na-Donu, Taganrog: Izdatel'stvo YUzhnogo federal'nogo universiteta, 2017. – 146 c.

Загрузки

Опубликован

2024-03-27