dc.creator | Schmalfuss, Murilo Figueiredo | |
dc.date.accessioned | 2020-11-26T13:52:16Z | |
dc.date.available | 2020-11-26T13:52:16Z | |
dc.date.issued | 2020-04-23 | |
dc.identifier.citation | SCHMALFUSS, Murilo Figueiredo. Uma Interface para Escalonamento de Algoritmos Iterativos em C++. Orientador: Gerson Geraldo H. Cavalheiro. 2020. 84 f. Dissertação (Mestrado em Ciência da Computação) – Centro de Desenvolvimento Tecnológico, Universidade Federal de Pelotas, Pelotas, 2020. | pt_BR |
dc.identifier.uri | http://guaiaca.ufpel.edu.br/handle/prefix/6654 | |
dc.description.abstract | Currently, parallel architectures are present in almost all kind of devices, justifying a search for tools and techniques that facilitate the development of parallel applications without jeopardizing performance. The current tools for parallel programming understand this need and focus their efforts on scheduling mechanisms that take advantage of common parallel patterns, present in the development of parallel applications. Iterative algorithms make up a large portion of computational problems, solutions that
optimize the execution of these algorithms are related to the way the tasks are divided and scheduled. However, these tools do not offer the flexibility to change the scheduling policy, forcing the developer to solve problems according to the chosen tools and their way of scheduling, requiring the developer a knowledge of details about the implementation of tools to extract maximum performance. This approach offers a parallel object-oriented interface that allows to switch scheduling policies, allowing the scheduling strategy to be adapted according to the use of the algorithm. The parallel pattern map was used for a case study of performance validation and performance, comparing the results with other tools available for C ++, such as TBB and OpenMP. | pt_BR |
dc.description.sponsorship | Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES | pt_BR |
dc.language | por | pt_BR |
dc.publisher | Universidade Federal de Pelotas | pt_BR |
dc.rights | OpenAccess | pt_BR |
dc.subject | Escalonamento | pt_BR |
dc.subject | Algoritmos iterativos | pt_BR |
dc.subject | Computação | pt_BR |
dc.subject | Processamento paralelo | pt_BR |
dc.subject | Processamento de alto desempenho | pt_BR |
dc.subject | Scheduling | pt_BR |
dc.subject | Iterative algorithms | pt_BR |
dc.subject | Parallel processing | pt_BR |
dc.subject | High performance computing | pt_BR |
dc.title | Uma interface para escalonamento de algoritmos iterativos em C++ | pt_BR |
dc.title.alternative | An interface for scheduling iterative algorithms in C++ | pt_BR |
dc.type | masterThesis | pt_BR |
dc.contributor.authorLattes | http://lattes.cnpq.br/2410170342051507 | pt_BR |
dc.contributor.advisorLattes | http://lattes.cnpq.br/1542351302502326 | pt_BR |
dc.description.resumo | Atualmente, as arquiteturas paralelas estão presente em praticamente todos os tipos de dispositivos, justificando uma busca por ferramentas e técnicas que facilitem o desenvolvimento de aplicações paralelas sem prejudicar o desempenho. As ferramentas atuais para programação paralela entendem essa necessidade e focam seus esforços em estratégias de escalonamento que tirem vantagem dos padrões paralelos comumente presentes no desenvolvimento de aplicações paralelas. Os algoritmos
iterativos compõem uma grande parcela dos problemas computacionais, soluções que otimizem a execução desses algoritmos estão relacionadas à forma como as tarefas são divididas e escalonadas. Porém estas ferramentas não oferecem a flexibilidade para alterar a política de escalonamento, forçando o desenvolvedor a projetar a solução do problema de acordo com a ferramenta escolhida e sua forma de escalonamento, exigindo do desenvolvedor o conhecimento de detalhes sobre a implementação da ferramenta para extrair o máximo de desempenho. Essa abordagem oferece pouco
reuso de código, e a portabilidade fica dependente das plataformas suportadas pela ferramenta.
Este trabalho propõe uma interface paralela orientada a objetos que permita a troca das políticas de escalonamento, permitindo a adequação da estratégia de escalonamento em função da necessidade do algoritmo. O padrão paralelo map foi utilizado como estudo de caso para validação e aferição do desempenho, comparando os resultados com outras ferramentas disponíveis para C++, como TBB e OpenMP. | pt_BR |
dc.publisher.department | Centro de Desenvolvimento Tecnológico | pt_BR |
dc.publisher.program | Programa de Pós-Graduação em Computação | pt_BR |
dc.publisher.initials | UFPel | pt_BR |
dc.subject.cnpq | CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO | pt_BR |
dc.publisher.country | Brasil | pt_BR |
dc.contributor.advisor1 | Cavalheiro, Gerson Geraldo Homrich | |