Please use this identifier to cite or link to this item:
http://hdl.handle.net/1843/ESBF-97GJKT
Full metadata record
DC Field | Value | Language |
---|---|---|
dc.contributor.advisor1 | Fernando Magno Quintao Pereira | pt_BR |
dc.contributor.referee1 | Luiz Filipe Menezes Vieira | pt_BR |
dc.contributor.referee2 | Renato Antonio Celso Ferreira | pt_BR |
dc.contributor.referee3 | Rodolfo Jardim de Azevedo | pt_BR |
dc.creator | Diogo Nunes Sampaio | pt_BR |
dc.date.accessioned | 2019-08-13T12:58:55Z | - |
dc.date.available | 2019-08-13T12:58:55Z | - |
dc.date.issued | 2013-03-08 | pt_BR |
dc.identifier.uri | http://hdl.handle.net/1843/ESBF-97GJKT | - |
dc.description.abstract | The use of graphics processing units (GPUs) for accelerating Data Parallel workloads is the new trend on the computing market. This growing interest brought renewed attention to the Single Instruction Multiple Data (SIMD) execution model. SIMD machines give application developers tremendous computational power; however, programmingthem is stil challenging. In particular, developers must deal with memory and control flow divergences. These phenomena stem from a condition that we call data divergence, which occurs whenever processing elements (PEs) that run in lockstep see the same variable name holding different values. To deal with divergences this work introduces a new code analysis, called Divergence Analysis with Affine Constraints. Application developers and compilers can benefit from the information generated by this analysis with two different objectives. First, to improve code generate to machines that have vector instructions but cannot handle control divergence. Second, to optimize GPU code. To illustrate the last one, we present register allocators that relly on divergenceinformation to better use GPU memory hierarchy. These optimized allocators produced GPU code that is 29.70% faster than the code produced by a conventional allocator when tested on a suite of well-known benchmarks. | pt_BR |
dc.description.resumo | Uma nova tendência no mercado de computadores é usar unidades de processamento gráfico (GPUs) 1 para acelerar tarefas paralelas por dados. Esse crescente interesse renovou a atenção dada ao modelo de execução Single Instruction Multiple Data (SIMD). Máquinas SIMD fornecem uma tremenda capacidade computacional aos desenvolvedores, mas programá-las de forma eficiente ainda é um desafio, particularmente devido a perdas de performance causadas por divergências de memória e de fluxo. Esses fenômenos são consequências de dados divergentes. Dados divergentes são variáveis com mesmo nome mas valores diferentes entre as unidades de processamento. A fim de lidar com os fenômenos de divergências, esta dissertação introduz uma nova ferramenta de análise de código, a qual chamamos Análise de Divergência com Restrições Afins. Desenvolvedores de programas e compiladores podem servir-se das informações de divergência com dois propósitos diferentes. Primeiro, podem melhorar a qualidade de programas gerados para máquinas que possuem instruções vetoriais, mesmo que essas sejam incapazes de lidar com divergências de fluxo. Segundo, podem otimizar programascriados para placas gráficas. Para exemplificar esse último, apresentamos uma otimização para alocadores de registradores que, usando das informações geradas pelas análises de divergências, melhora a utilização da hierarquia de memória das placas gráficas.Testados sobre conhecidos benchmarks, os alocadores de registradores otimizados produzem código que é, em média, 29.70% mais rápido do que o código gerado por alocadores de registradores convencionais. | pt_BR |
dc.language | Português | pt_BR |
dc.publisher | Universidade Federal de Minas Gerais | pt_BR |
dc.publisher.initials | UFMG | pt_BR |
dc.rights | Acesso Aberto | pt_BR |
dc.subject | AnÁlise estática | pt_BR |
dc.subject | Alocação de registradores | pt_BR |
dc.subject | Compiladores | pt_BR |
dc.subject | Rematerialização | pt_BR |
dc.subject | Linguagem de programação | pt_BR |
dc.subject | SIMT | pt_BR |
dc.subject | SIMD | pt_BR |
dc.subject | Divergências | pt_BR |
dc.subject | GPU | pt_BR |
dc.subject.other | Linguagem de programação (Computadores) | pt_BR |
dc.subject.other | Computação | pt_BR |
dc.subject.other | Compiladores (Programas de computador) | pt_BR |
dc.title | Divergência em GPU: análises e alocação de registradores | pt_BR |
dc.type | Dissertação de Mestrado | pt_BR |
Appears in Collections: | Dissertações de Mestrado |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
diogo_msc.pdf | 31.34 MB | Adobe PDF | View/Open |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.