Use este identificador para citar ou linkar para este item:
https://repositorio.ufu.br/handle/123456789/29093
ORCID: | http://orcid.org/0000-0002-0879-5106 |
Tipo do documento: | Trabalho de Conclusão de Curso |
Tipo de acesso: | Acesso Aberto |
Título: | Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador |
Título(s) alternativo(s): | Use of ant colony based algorithm to explore compiler optimization sequences |
Autor(es): | Faria, Tiago Pereira de |
Primeiro orientador: | Martins, Luiz Gustavo Almeida |
Primeiro membro da banca: | Lopes, Carlos Roberto |
Segundo membro da banca: | Carneiro, Murillo Guimarães |
Resumo: | 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). |
Palavras-chave: | 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 |
Área(s) do CNPq: | CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::SISTEMAS DE INFORMACAO |
Idioma: | por |
País: | Brasil |
Editora: | Universidade Federal de Uberlândia |
Referência: | 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 |
Data de defesa: | 12-Jul-2019 |
Aparece nas coleções: | TCC - Ciência da Computação |
Arquivos associados a este item:
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
UsoAlgoritmoBaseado.pdf | 784.7 kB | Adobe PDF | Visualizar/Abrir |
Este item está licenciada sob uma Licença Creative Commons