Mostrar registro simples

dc.creatorDi Domenico, Daniel
dc.date.accessioned2024-05-03T15:56:05Z
dc.date.available2024-05-02
dc.date.available2024-05-03T15:56:05Z
dc.date.issued2022-10-11
dc.identifier.citationDI DOMENICO, Daniel. A Model for Software Measurement Aiming to Guide Evaluations and Comparisons between Programming Tools to Implement GPU Applications. Orientador: Gerson Geraldo Homrich Cavalheiro. 2022. 103 f. Tese (Doutorado em Ciência da Computação) – Centro de Desenvolvimento Tecnológico, Universidade Federal de Pelotas, Pelotas, 2022.pt_BR
dc.identifier.urihttp://guaiaca.ufpel.edu.br/xmlui/handle/prefix/12901
dc.description.abstractProgramming tools for GPUs are frameworks that offer resources to explore the massive parallelism power provided by these devices. Nowadays, they are being extensively applied for HPC purposes. Despite the existence of many tools that can be used to encode a GPU program, programming targeting GPUs is still seen as challenging, requiring the use of specialized frameworks to deal with the heteroge neous environment demanded by the GPU architecture. Also, there isn’t a commonly accepted definition of a standard framework for GPU programming. So, the process to select a tool in order to implement a GPU program is not simple, especially when this choice can impact the performance and programming effort required to implement it. Regarding that, this Thesis proposes a model to guide evaluations and comparisons between frameworks for GPUs. This model was designed based on the GQM method for software measurement and, because of that, was formulated using goals, ques tions and metrics to analyze three different aspects about the frameworks: program ming expressiveness, programming effort and performance. As a result, the model seeks to offer a perspective including the characteristics, strengths and weaknesses about programming tools. We have in mind that such perspective can support the pro cess of choosing a framework to develop a GPU program. Experiments guided by the proposed GQM model were conducted applying the NAS Parallel Benchmarks imple mented with CUDA, OpenACC and Python/Numba. The experimental results contem plated the three aspects defined in the model, showing the similarities and differences regarding the tested APIs. Further, these results were employed to compose the per spective considering each framework. Due that, we believe this study contributes to improving the available knowledge about these tools, as well as advancing research on programming tools for GPUs.pt_BR
dc.description.sponsorshipSem bolsapt_BR
dc.languageengpt_BR
dc.publisherUniversidade Federal de Pelotaspt_BR
dc.rightsOpenAccesspt_BR
dc.subjectGPUpt_BR
dc.subjectProgramming toolpt_BR
dc.subjectSoftware measurementpt_BR
dc.subjectNPBpt_BR
dc.subjectFerramenta de programaçãopt_BR
dc.subjectMétrica de softwarept_BR
dc.titleA Model for Software Measurement Aiming to Guide Evaluations and Comparisons between Programming Tools to Implement GPU Applicationspt_BR
dc.title.alternativeUm Modelo de Métrica de Software para Conduzir Avaliações e Comparações entre Ferramentas de Programação para Implementar Aplicações para GPUpt_BR
dc.typedoctoralThesispt_BR
dc.contributor.advisor-co1Lima, João Vicente Ferreira
dc.description.resumoFerramentas de programação para GPUs são frameworks que possuem recursos para explorar o paralelismo massivo oferecido por tais dispositivos. Atualmente, estes dispositivos estão sendo amplamente empregados na Computação de Alto Desempenho. Apesar de existirem diversas ferramentas que podem ser utilizadas para codificar uma aplicação para GPU, o processo de programação requerido para esta finalidade ainda é visto como desafiador, demandando o uso de frameworks específicos para lidar com ambiente heterogêneo existente na arquitetura de GPU. Além disso, não há um framework amplamente aceito como o padrão para explorar GPUs. Neste sentido, a escolha de uma ferramenta para implementar um programa para GPUs não é simples, visto que tal decisão pode impactar o desempenho e o esforço de programação necessário para desenvolvê-lo. Diante disto, esta Tese propõe um modelo para conduzir avaliações e comparações entre frameworks para GPUs. Este modelo foi formulado baseando-se na metodologia GQM para métrica de software e, devido a isto, utiliza Goals (Objetivos), Questions (Questões) e Metrics (Métricas) para analisar três aspectos referente aos frameworks: expressividade de programação, esforço de programação e desempenho. Como resultado, o modelo visa oferecer uma perspectiva considerando as características, pontos fortes e pontos fracos das ferramentas de programação. Nossa ideia é que tal perspectiva seja capaz de auxiliar na escolha de um framework a fim de desenvolver um programa para GPU. Experimentos conduzidos a partir do modelo GQM proposto foram realizados aplicando o conjunto de benchmarks do “NAS Parallel Benchmarks” implementados com CUDA, OpenACC e Python/Numba. Os resultados experimentais contemplaram os três aspectos definidos no modelo, mostrando as semelhanças e diferenças das APIs utilizadas. Ademais, os resultados foram empregados para construir a perspectiva sobre cada framework. Desta forma, nós acreditamos que este estudo contribui para aprimorar o conhecimento disponível sobre tais ferramentas, bem como no avanço das pesquisas relacionadas a ferramentas de programação para GPUs.pt_BR
dc.publisher.programPrograma de Pós-Graduação em Computaçãopt_BR
dc.publisher.initialsUFPelpt_BR
dc.subject.cnpqCIENCIAS EXATAS E DA TERRApt_BR
dc.publisher.countryBrasilpt_BR
dc.rights.licenseCC BY-NC-SApt_BR
dc.contributor.advisor1Cavalheiro, Gerson Geraldo Homrich
dc.subject.cnpq1CIENCIA DA COMPUTACAOpt_BR


Arquivos deste item

Thumbnail

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples