Logo do repositório
 
Publicação

Python framework for parallelism on a cluster

datacite.subject.fosEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informáticapt_PT
dc.contributor.advisorDuarte, Vítor
dc.contributor.authorPinto, Miguel Morato Roxo Ribeiro
dc.date.accessioned2025-01-28T10:50:13Z
dc.date.available2025-01-28T10:50:13Z
dc.date.issued2024-06
dc.description.abstractThe 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.pt_PT
dc.description.abstractA 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.pt_PT
dc.identifier.urihttp://hdl.handle.net/10362/178006
dc.language.isoengpt_PT
dc.subjectDistributed Parallel Programmingpt_PT
dc.subjectPythonpt_PT
dc.subjectTorc_pypt_PT
dc.subjectScooppt_PT
dc.subjectDaskpt_PT
dc.titlePython framework for parallelism on a clusterpt_PT
dc.typemaster thesis
dspace.entity.typePublication
rcaap.rightsopenAccesspt_PT
rcaap.typemasterThesispt_PT
thesis.degree.nameMASTER IN COMPUTER SCIENCE AND ENGINEERINGpt_PT

Ficheiros

Principais
A mostrar 1 - 1 de 1
A carregar...
Miniatura
Nome:
Pinto_2024.pdf
Tamanho:
1.66 MB
Formato:
Adobe Portable Document Format
Licença
A mostrar 1 - 1 de 1
Miniatura indisponível
Nome:
license.txt
Tamanho:
348 B
Formato:
Item-specific license agreed upon to submission
Descrição: