Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador

Detalhes bibliográficos
Autor(a) principal: Faria, Tiago Pereira de
Data de Publicação: 2019
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UFU
Texto Completo: https://repositorio.ufu.br/handle/123456789/29093
Resumo: Trabalho de Conclusão de Curso (Graduação)
id UFU_856379123a3a64e47e5865d69c2f8dc7
oai_identifier_str oai:repositorio.ufu.br:123456789/29093
network_acronym_str UFU
network_name_str Repositório Institucional da UFU
repository_id_str
spelling 2020-03-31T16:26:14Z2020-03-31T16:26:14Z2019-07-12FARIA, 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.https://repositorio.ufu.br/handle/123456789/29093porUniversidade Federal de UberlândiaCiência da ComputaçãoBrasilhttp://creativecommons.org/licenses/by/3.0/us/info:eu-repo/semantics/openAccessCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::SISTEMAS DE INFORMACAOCompiladoresAlgoritmo baseado em colônia de formigasACOBusca de sequências de passos de otimizaçãoCompilersAnt colony based algorithmOptimization sequences searchUso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compiladorUse of ant colony based algorithm to explore compiler optimization sequencesinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisMartins, Luiz Gustavo Almeidahttp://lattes.cnpq.br/2546751023256424Lopes, Carlos Robertohttp://lattes.cnpq.br/6737493567462425Carneiro, Murillo Guimarãeshttp://lattes.cnpq.br/8158868389973535http://lattes.cnpq.br/1508953047416386Faria, Tiago Pereira deTrabalho de Conclusão de Curso (Graduação)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).5371353147reponame:Repositório Institucional da UFUinstname:Universidade Federal de Uberlândia (UFU)instacron:UFUCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8914https://repositorio.ufu.br/bitstream/123456789/29093/5/license_rdf2b2ab6ec8a6a222739b9c0e57c635c2eMD55LICENSElicense.txtlicense.txttext/plain; charset=utf-81792https://repositorio.ufu.br/bitstream/123456789/29093/6/license.txt48ded82ce41b8d2426af12aed6b3cbf3MD56TEXTUsoAlgoritmoBaseado.pdf.txtUsoAlgoritmoBaseado.pdf.txtExtracted texttext/plain92546https://repositorio.ufu.br/bitstream/123456789/29093/8/UsoAlgoritmoBaseado.pdf.txtaccab245e528357b81b5cd4c8636ca8eMD58THUMBNAILUsoAlgoritmoBaseado.pdf.jpgUsoAlgoritmoBaseado.pdf.jpgGenerated Thumbnailimage/jpeg1272https://repositorio.ufu.br/bitstream/123456789/29093/9/UsoAlgoritmoBaseado.pdf.jpgd994090a40b2e5c4861a179736346d53MD59ORIGINALUsoAlgoritmoBaseado.pdfUsoAlgoritmoBaseado.pdfapplication/pdf803534https://repositorio.ufu.br/bitstream/123456789/29093/7/UsoAlgoritmoBaseado.pdf18ee68bf54dd16b7b64398ca4ff73ecfMD57123456789/290932020-04-01 03:07:05.582oai:repositorio.ufu.br:123456789/29093w4kgbmVjZXNzw6FyaW8gY29uY29yZGFyIGNvbSBhIGxpY2Vuw6dhIGRlIGRpc3RyaWJ1acOnw6NvIG7Do28tZXhjbHVzaXZhLCBhbnRlcyBxdWUgbyBkb2N1bWVudG8gcG9zc2EgYXBhcmVjZXIgbm8gUmVwb3NpdMOzcmlvLiBQb3IgZmF2b3IsIGxlaWEgYSBsaWNlbsOnYSBhdGVudGFtZW50ZS4gQ2FzbyBuZWNlc3NpdGUgZGUgYWxndW0gZXNjbGFyZWNpbWVudG8gZW50cmUgZW0gY29udGF0byBhdHJhdsOpcyBkbyBlLW1haWwgIHJlcG9zaXRvcmlvQHVmdS5ici4KCkxJQ0VOw4dBIERFIERJU1RSSUJVScOHw4NPIE7Dg08tRVhDTFVTSVZBCgpBbyBhc3NpbmFyIGUgZW50cmVnYXIgZXN0YSBsaWNlbsOnYSwgby9hIFNyLi9TcmEuIChhdXRvciBvdSBkZXRlbnRvciBkb3MgZGlyZWl0b3MgZGUgYXV0b3IpOgoKYSkgQ29uY2VkZSDDoCBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBVYmVybMOibmRpYSBvIGRpcmVpdG8gbsOjby1leGNsdXNpdm8gZGUgcmVwcm9kdXppciwgY29udmVydGVyIChjb21vIGRlZmluaWRvIGFiYWl4byksIGNvbXVuaWNhciBlL291IGRpc3RyaWJ1aXIgbyBkb2N1bWVudG8gZW50cmVndWUgKGluY2x1aW5kbyBvIHJlc3Vtby9hYnN0cmFjdCkgZW0gZm9ybWF0byBkaWdpdGFsIG91IGltcHJlc3NvIGUgZW0gcXVhbHF1ZXIgbWVpby4KCmIpIERlY2xhcmEgcXVlIG8gZG9jdW1lbnRvIGVudHJlZ3VlIMOpIHNldSB0cmFiYWxobyBvcmlnaW5hbCwgZSBxdWUgZGV0w6ltIG8gZGlyZWl0byBkZSBjb25jZWRlciBvcyBkaXJlaXRvcyBjb250aWRvcyBuZXN0YSBsaWNlbsOnYS4gRGVjbGFyYSB0YW1iw6ltIHF1ZSBhIGVudHJlZ2EgZG8gZG9jdW1lbnRvIG7Do28gaW5mcmluZ2UsIHRhbnRvIHF1YW50byBsaGUgw6kgcG9zc8OtdmVsIHNhYmVyLCBvcyBkaXJlaXRvcyBkZSBxdWFscXVlciBvdXRyYSBwZXNzb2Egb3UgZW50aWRhZGUuCgpjKSBTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSBjb250w6ltIG1hdGVyaWFsIGRvIHF1YWwgbsOjbyBkZXTDqW0gb3MgZGlyZWl0b3MgZGUgYXV0b3IsIGRlY2xhcmEgcXVlIG9idGV2ZSBhdXRvcml6YcOnw6NvIGRvIGRldGVudG9yIGRvcyBkaXJlaXRvcyBkZSBhdXRvciBwYXJhIGNvbmNlZGVyIMOgIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFViZXJsw6JuZGlhIG9zIGRpcmVpdG9zIHJlcXVlcmlkb3MgcG9yIGVzdGEgbGljZW7Dp2EsIGUgcXVlIGVzc2UgbWF0ZXJpYWwgY3Vqb3MgZGlyZWl0b3Mgc8OjbyBkZSB0ZXJjZWlyb3MgZXN0w6EgY2xhcmFtZW50ZSBpZGVudGlmaWNhZG8gZSByZWNvbmhlY2lkbyBubyB0ZXh0byBvdSBjb250ZcO6ZG8gZG8gZG9jdW1lbnRvIGVudHJlZ3VlLgoKU2UgbyBkb2N1bWVudG8gZW50cmVndWUgw6kgYmFzZWFkbyBlbSB0cmFiYWxobyBmaW5hbmNpYWRvIG91IGFwb2lhZG8gcG9yIG91dHJhIGluc3RpdHVpw6fDo28gcXVlIG7Do28gYSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBVYmVybMOibmRpYSwgZGVjbGFyYSBxdWUgY3VtcHJpdSBxdWFpc3F1ZXIgb2JyaWdhw6fDtWVzIGV4aWdpZGFzIHBlbG8gcmVzcGVjdGl2byBjb250cmF0byBvdSBhY29yZG8uCgpBIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFViZXJsw6JuZGlhIGlkZW50aWZpY2Fyw6EgY2xhcmFtZW50ZSBvKHMpIHNldShzKSBub21lKHMpIGNvbW8gbyhzKSBhdXRvcihlcykgb3UgZGV0ZW50b3IgKGVzKSBkb3MgZGlyZWl0b3MgZG8gZG9jdW1lbnRvIGVudHJlZ3VlLCBlIG7Do28gZmFyw6EgcXVhbHF1ZXIgYWx0ZXJhw6fDo28sIHBhcmEgYWzDqW0gZGFzIHBlcm1pdGlkYXMgcG9yIGVzdGEgbGljZW7Dp2EuCg==Repositório InstitucionalONGhttp://repositorio.ufu.br/oai/requestdiinf@dirbi.ufu.bropendoar:2024-04-26T14:55:59.579719Repositório Institucional da UFU - Universidade Federal de Uberlândia (UFU)false
dc.title.pt_BR.fl_str_mv Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
dc.title.alternative.pt_BR.fl_str_mv Use of ant colony based algorithm to explore compiler optimization sequences
title Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
spellingShingle Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
Faria, Tiago Pereira de
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::SISTEMAS DE INFORMACAO
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
title_short Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
title_full Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
title_fullStr Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
title_full_unstemmed Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
title_sort Uso de algoritmo baseado em colônia de formigas para explorar sequências de otimização do compilador
author Faria, Tiago Pereira de
author_facet Faria, Tiago Pereira de
author_role author
dc.contributor.advisor1.fl_str_mv Martins, Luiz Gustavo Almeida
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/2546751023256424
dc.contributor.referee1.fl_str_mv Lopes, Carlos Roberto
dc.contributor.referee1Lattes.fl_str_mv http://lattes.cnpq.br/6737493567462425
dc.contributor.referee2.fl_str_mv Carneiro, Murillo Guimarães
dc.contributor.referee2Lattes.fl_str_mv http://lattes.cnpq.br/8158868389973535
dc.contributor.authorLattes.fl_str_mv http://lattes.cnpq.br/1508953047416386
dc.contributor.author.fl_str_mv Faria, Tiago Pereira de
contributor_str_mv Martins, Luiz Gustavo Almeida
Lopes, Carlos Roberto
Carneiro, Murillo Guimarães
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::SISTEMAS DE INFORMACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::SISTEMAS DE INFORMACAO
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
dc.subject.por.fl_str_mv 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
description Trabalho de Conclusão de Curso (Graduação)
publishDate 2019
dc.date.issued.fl_str_mv 2019-07-12
dc.date.accessioned.fl_str_mv 2020-03-31T16:26:14Z
dc.date.available.fl_str_mv 2020-03-31T16:26:14Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv 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.
dc.identifier.uri.fl_str_mv https://repositorio.ufu.br/handle/123456789/29093
identifier_str_mv 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.
url https://repositorio.ufu.br/handle/123456789/29093
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv http://creativecommons.org/licenses/by/3.0/us/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by/3.0/us/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Uberlândia
Ciência da Computação
dc.publisher.country.fl_str_mv Brasil
publisher.none.fl_str_mv Universidade Federal de Uberlândia
Ciência da Computação
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFU
instname:Universidade Federal de Uberlândia (UFU)
instacron:UFU
instname_str Universidade Federal de Uberlândia (UFU)
instacron_str UFU
institution UFU
reponame_str Repositório Institucional da UFU
collection Repositório Institucional da UFU
bitstream.url.fl_str_mv https://repositorio.ufu.br/bitstream/123456789/29093/5/license_rdf
https://repositorio.ufu.br/bitstream/123456789/29093/6/license.txt
https://repositorio.ufu.br/bitstream/123456789/29093/8/UsoAlgoritmoBaseado.pdf.txt
https://repositorio.ufu.br/bitstream/123456789/29093/9/UsoAlgoritmoBaseado.pdf.jpg
https://repositorio.ufu.br/bitstream/123456789/29093/7/UsoAlgoritmoBaseado.pdf
bitstream.checksum.fl_str_mv 2b2ab6ec8a6a222739b9c0e57c635c2e
48ded82ce41b8d2426af12aed6b3cbf3
accab245e528357b81b5cd4c8636ca8e
d994090a40b2e5c4861a179736346d53
18ee68bf54dd16b7b64398ca4ff73ecf
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFU - Universidade Federal de Uberlândia (UFU)
repository.mail.fl_str_mv diinf@dirbi.ufu.br
_version_ 1797425485125255168