???jsp.display-item.identifier??? https://repositorio.unipampa.edu.br/jspui/handle/riu/8527
???org.dspace.app.webui.jsptag.ItemTag.full???
???org.dspace.app.webui.jsptag.ItemTag.dcfield??????org.dspace.app.webui.jsptag.ItemTag.value??????org.dspace.app.webui.jsptag.ItemTag.lang???
dc.contributor.advisor1Luizelli, Marcelo Caggiani-
dc.creatorNogueira, Angelo Gaspar Diniz-
dc.date.accessioned2023-07-28T18:37:08Z-
dc.date.available2023-07-28T18:37:08Z-
dc.date.issued2023-07-07-
dc.identifier.citationNOGUEIRA, Angelo Gaspar Diniz. Um estudo da extensão de paralelismo dinâmico fornecido por CUDA em aplicações recursivas. Orientador: Marcelo Caggiani Luizelli. 2023. 57p. Trabalho de Conclusão de Curso (Bacharel em Ciência da Computação) – Universidade Federal do Pampa, Curso de Ciência da Computação, Alegrete, 2023.pt_BR
dc.identifier.urihttps://repositorio.unipampa.edu.br/jspui/handle/riu/8527-
dc.description.abstractThe demand for application performance in the domains of graphical computation, machine learning, high-performance computing, etc. has been increasing over the years. To meet this demand, enterprises of such domains frequently tend to upgrade their computational resources, such as memory, processor, number of clusters, etc. However, this incremental upgrade may lead to a negative impact on costs related to energy. Therefore, one of the alternatives to increase the performance of applications without an increase in energy consumption of high-performance systems is the exploration of parallelism on the thread level. This level of parallelism can be explored in both homogeneous and heterogeneous architectures. Through the use of programming models that tend to make the programmer’s task simpler. One example of such a model is CUDA- (Compute Unified Device Architecture), a parallel programming model for heterogeneous environments composed of CPUs -(Central Processing Units) and GPUs -(Graphics Processing Units). In that sense, CUDA allows for the execution of parts or short segments of an application on the GPU. Through the use and creation of functions called kernels. By default, kernel calls need to be made on the CPU, and as such, there exists a cost associated with the communication between the CPU and GPU. In that sense, possible performance gains of recursive algorithms are limited. Given that, they require multiple kernel calls during their execution due to recursion. Besides that limitation, there also exists the necessity to use specialized kernels, to address the recursions of sub-problems of the graph. To solve this limitation, CUDA offers the programmer the extension dynamic parallelism, which allows kernel calls to be made directly on the GPU. This way, avoiding or minimizing the aforementioned cost. In this sense, this course conclusion work aims to evaluate the performance and energy consumption of the dynamic parallelism extension of CUDA in recursive algorithms.pt_BR
dc.languageporpt_BR
dc.publisherUniversidade Federal do Pampapt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectCiência da computaçãopt_BR
dc.subjectComputação heterogêneapt_BR
dc.subjectComputação de alto desempenhopt_BR
dc.subjectEnergia - Consumopt_BR
dc.subjectComputer sciencept_BR
dc.subjectHeterogeneous computingpt_BR
dc.subjectHigh performance computingpt_BR
dc.subjectEnergy - Consumptionpt_BR
dc.titleUm estudo da extensão de paralelismo dinâmico fornecido por CUDA em aplicações recursivaspt_BR
dc.typeTrabalho de Conclusão de Cursopt_BR
dc.contributor.advisor-co1Lorenzon, Arthur Francisco-
dc.publisher.initialsUNIPAMPApt_BR
dc.publisher.countryBrasilpt_BR
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRApt_BR
dc.description.resumoA demanda por desempenho de aplicações nos domínios de computação gráfica, aprendizado de máquina, computação de alto desempenho, etc. vêm crescendo ao longo dos anos. Para atender à esta demanda, empresas destes domínios frequentemente tendem a atualizar seus recursos computacionais, como por exemplo, processadores, quantidade de clusters, memória, etc. No entanto, esta atualização incremental pode ter um impacto negativo nos custos relacionados a energia. Portanto, uma das alternativas para a melhoria do desempenho de aplicações sem um impacto negativo no consumo de energia de sistemas de alto desempenho é a exploração do paralelismo no nível de threads. O paralelismo neste nível pode ser explorado em arquiteturas homogêneas e heterogêneas, através do uso de modelos de programação que tendem a tornar a tarefa do programador mais simples. Um exemplo de tais modelos é o CUDA (Compute Unified Device Architecture), um modelo de programação paralela para ambientes heterogêneos compostos de CPUs (Central Processing Units) e GPUs -(Graphics Processing Units). Nesse sentido, CUDA permite a execução de trechos ou segmentos de uma aplicação na GPU, através de funções chamadas de kernels. Por padrão, as chamadas de kernel são realizadas na CPU, e como tal, existe um custo associado à comunicação entre CPU e GPU. Dessa forma, os possíveis ganhos de desempenho em algoritmos recursivos são limitadas, já que estes requerem diversas chamadas de kernel durante sua execução, devido a recursão. Para resolver esta limitação CUDA fornece ao programador a extensão paralelismo dinâmico, que permite que chamadas de kernels sejam realizadas diretamente na GPU. Dessa forma, evitando ou minimizando o custo mencionado. Nesse sentido, este trabalho de conclusão de curso tem como objetivo avaliar o desempenho e consumo de energia da extensão de paralelismo dinâmico do CUDA em algoritmos recursivos.pt_BR
dc.publisher.departmentCampus Alegretept_BR
???org.dspace.app.webui.jsptag.ItemTag.appears???Ciência da Computação

???org.dspace.app.webui.jsptag.ItemTag.files???
???org.dspace.app.webui.jsptag.ItemTag.file??? ???org.dspace.app.webui.jsptag.ItemTag.description??? ???org.dspace.app.webui.jsptag.ItemTag.filesize??????org.dspace.app.webui.jsptag.ItemTag.fileformat??? 
Angelo Gaspar Diniz Nogueira - 2023.pdf1.12 MBAdobe PDF???org.dspace.app.webui.jsptag.ItemTag.view???


???jsp.display-item.copyright???