Please use this identifier to cite or link to this item:
https://repositorio.ufu.br/handle/123456789/29093
ORCID: | http://orcid.org/0000-0002-0879-5106 |
Document type: | Trabalho de Conclusão de Curso |
Access type: | Acesso Aberto |
Title: | Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador |
Alternate title (s): | Use of ant colony based algorithm to explore compiler optimization sequences |
Author: | Faria, Tiago Pereira de |
First Advisor: | Martins, Luiz Gustavo Almeida |
First member of the Committee: | Lopes, Carlos Roberto |
Second member of the Committee: | Carneiro, Murillo Guimarães |
Summary: | Achar sequências de passos de otimização específicas para o código alvo é uma tarefa complicada, porém muito importante, pois conseguem melhorar o desempenho significativamente em relação às sequências pré estabelecidas tipicamente presentes nos compiladores modernos. Este trabalho propõem um modelo híbrido utilizando dois módulos principais: um seletor e um ordenador. O seletor visa selecionar, dentre um conjunto de códigos de referência, aqueles que com maior similaridade com o novo código. Para isso, foram avaliadas duas abordagens, uma baseada no KNN e outra utilizando um algoritmo de K-Medias (K-Means). O modulo ordenador tem como objetivo encontrar a melhor ordem de aplicação dos passos presentes nas sequências dos códigos similares selecionados. Para ele, foram avaliadas duas abordagens diferentes utilizando algoritmos baseados em colônia de formigas. A primeira utiliza a distância percorrida no grafo para avaliar as soluções das formigas, enquanto a segunda compila e simula a execução do código alvo para avalia-las. Foram realizados experimentos utilizando 51 programas do benchmark do Test-Suite do compilador LLVM. Com os experimentos foi possível concluir que o KNN consegue selecionar de forma mais eficiente os programas similares. O modelo utilizando a distância percorrida no grafo para avaliar as sequências apresentou speedup médio de 1.05x em relação a melhor sequência padrão (-OX) do compilador (LLVM). O modelo utilizando simulação das sequências conseguiu speedup de 1.073x em relação ao -OX, embora demande um tempo de exploração consideravelmente maior (91.1 minutos ao invés de 2.7). |
Keywords: | Compiladores Algoritmo baseado em colônia de formigas ACO Busca de sequências de passos de otimização Compilers Ant colony based algorithm Optimization sequences search |
Area (s) of CNPq: | CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::SISTEMAS DE INFORMACAO |
Language: | por |
Country: | Brasil |
Publisher: | Universidade Federal de Uberlândia |
Quote: | FARIA, Tiago Pereira de. Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador. 2019. 53 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2020. |
URI: | https://repositorio.ufu.br/handle/123456789/29093 |
Date of defense: | 12-Jul-2019 |
Appears in Collections: | TCC - Ciência da Computação |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
UsoAlgoritmoBaseado.pdf | 784.7 kB | Adobe PDF | View/Open |
This item is licensed under a Creative Commons License