Python Framework for Parallelism on a Cluster
Zapisane w:
| Wydane w: | PQDT - Global (2024) |
|---|---|
| 1. autor: | |
| Wydane: |
ProQuest Dissertations & Theses
|
| Hasła przedmiotowe: | |
| Dostęp online: | Citation/Abstract Full Text - PDF |
| Etykiety: |
Nie ma etykietki, Dołącz pierwszą etykiete!
|
| Streszczenie: | The increasing demand for high-performance computing and the need to process large amounts of data have made Distributed Parallel Programming an essential part of modern computing. The traditional sequential processing approach can no longer keep up with data’s increasing volume and complexity. This is where parallel programming comes into play. By dividing a computational task into smaller, parallelizable tasks, we can use multiple processing units to achieve faster and more efficient processing. However, not all programming languages are well-suited for parallel programming.Python has become a popular choice for many scientists and engineers due to its simplicity, readability, and versatility. Python is well-equipped to handle the demands of parallel processing in a cluster environment and several Python libraries, namely Torc_py, Scoop, and Dask, have been developed to further help the common programmer to explore the parallelism in multiprocessors and clusters. Those libraries offer simplicity and ease of use for common programming patters and also follow Python’s straightforward syntax and user-friendly, making this language a great option for advanced programmers and also to developers who are new to parallel programming.This research aims to explore the programming language Python and some of its libraries, provide a comprehensive understanding of the current state of parallel distributed programming in Python, and implement support for parallel patterns lacking in the current modules. In particular, we aim to contribute to the easier development of programs based on Torc_py that use patterns like stencil, convolution, and search that can abort and calculate functions on data. A crescente procura por computação de alto desempenho assim como a neces- sidade de processar grandes quantidades de dados tornaram a Programação Paralela Distribuída uma parte essencial da computação moderna. A abordagem tradicional de processamento sequencial já não consegue acompanhar tanto o au- mento do volume como a sua maior complexidade. É aqui que entra a Programação Paralela Distribuída. Ao dividir uma tarefa em pequenas tarefas paralelizáveis, podemos aproveitar as múltiplas unidades de processamento para alcançar um processamento mais rápido e eficiente.No entanto, nem todas as linguagens de programação são adequadas à progra- mação paralela. O Python, por exemplo, tornou-se uma escolha popular para mui- tos cientistas e engenheiros devido à sua simplicidade, legibilidade e versatilidade. O Python está bem desenhado para responder as exigências de processamento paralelo em ambiente de cluster. Python conta com várias bibliotecas disponíveis para paralelismo em cluster como, por exemplo, Torc_py, Scoop e Dask. Uma das razões pelas quais o Python é uma escolha popular para paralelismo em cluster é a sua simplicidade e facilidade de utilização. As características do Python, no- meadamente a sua simples sintaxe e bibliotecas amigas do utilizador, constituem uma ótima opção para programadores novos em programação paralela.Esta pesquisa pretende explorar a linguagem de programação Python e algu- mas de suas bibliotecas, fornecer uma compreensão abrangente do estado atual da Programação Paralela Distribuída em Python e implementar suporte para padrões de programação paralela em falta nos módulos atuais. Em particular, pretende-se contribuir para um desenvolvimento simples de programas que utilizam padrões: stencil, convolução e de pesquisa que podem abortar e calculam funções sobre dados. |
|---|---|
| ISBN: | 9798311940801 |
| Źródło: | ProQuest Dissertations & Theses Global |