Análise de desempenho de algoritmos de enxame paralelizados em GPU
| Main Author: | |
|---|---|
| Publication Date: | 2019 |
| Format: | Bachelor thesis |
| Language: | por |
| Source: | Repositório Institucional da UNIPAMPA |
| Download full: | https://dspace.unipampa.edu.br/jspui/handle/riu/4168 |
Summary: | Algoritmos de enxames são um conjunto de heurísticas utilizados na busca de soluções ótimas em aplicações onde existem uma infinidade de possibilidades de respostas. Eles são extremamente versáteis e bastante utilizados em uma gama de diversos problemas, como por exemplo, no roteamento de veículos (BELL; MCMULLEN, 2004), predição de tendências do mercado financeiro (SHEN et al., 2011), problemas de fluxo de potência ótimo (MOHAMED et al., 2017), entre outros. Na busca por soluções ótimas, sendo que não se é necessário aos algoritmos compreenderem ou conhecerem completamente a função a ser avaliada, mantém-se a qualidade de resposta mesmo em casos de funções black box. Por natureza, estes algoritmos tem como característica uma relativa facilidade em sua paralelização, devido a uma certa independência dos componentes que formam o enxame, sendo que eles podem ser executados em um grande número de threads. Algumas aplicações que adotam algoritmos de enxame para a resolução de um problema exploram o paralelismo oferecido em CPU. Porém, a grande maioria não utiliza da computação em GPGPU para paralelização dos algoritmos. GPU oferecem um imenso número de threads, e alto desempenho em funções de cálculo básicas que são usadas na computação de fitness de um indivíduo ou de um enxame. Desta forma, este trabalho analisa e compara o desempenho de algoritmos de enxame implementados tanto em CPU quanto em GPU. Os resultados obtidos mostram que o desempenho em GPU é superior a CPU quando um número grande de elementos de enxame é utilizado. |
| id |
UNIP_497bf7875c1d4a5e342e6900b4ff8cd7 |
|---|---|
| oai_identifier_str |
oai:repositorio.unipampa.edu.br:riu/4168 |
| network_acronym_str |
UNIP |
| network_name_str |
Repositório Institucional da UNIPAMPA |
| repository_id_str |
|
| spelling |
Schepke, ClaudioMenezes, Angelo Geovanni Amaral2019-08-01T13:33:19Z2019-08-01T13:33:19Z2019-06-24MENEZES, Angelo Geovanni Amaral. Análise de desempenho de algoritmos de enxame paralelizados em GPU. Orientador: Claudio Schepke. 2019. 57 p. 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, 2019.https://dspace.unipampa.edu.br/jspui/handle/riu/4168Algoritmos de enxames são um conjunto de heurísticas utilizados na busca de soluções ótimas em aplicações onde existem uma infinidade de possibilidades de respostas. Eles são extremamente versáteis e bastante utilizados em uma gama de diversos problemas, como por exemplo, no roteamento de veículos (BELL; MCMULLEN, 2004), predição de tendências do mercado financeiro (SHEN et al., 2011), problemas de fluxo de potência ótimo (MOHAMED et al., 2017), entre outros. Na busca por soluções ótimas, sendo que não se é necessário aos algoritmos compreenderem ou conhecerem completamente a função a ser avaliada, mantém-se a qualidade de resposta mesmo em casos de funções black box. Por natureza, estes algoritmos tem como característica uma relativa facilidade em sua paralelização, devido a uma certa independência dos componentes que formam o enxame, sendo que eles podem ser executados em um grande número de threads. Algumas aplicações que adotam algoritmos de enxame para a resolução de um problema exploram o paralelismo oferecido em CPU. Porém, a grande maioria não utiliza da computação em GPGPU para paralelização dos algoritmos. GPU oferecem um imenso número de threads, e alto desempenho em funções de cálculo básicas que são usadas na computação de fitness de um indivíduo ou de um enxame. Desta forma, este trabalho analisa e compara o desempenho de algoritmos de enxame implementados tanto em CPU quanto em GPU. Os resultados obtidos mostram que o desempenho em GPU é superior a CPU quando um número grande de elementos de enxame é utilizado.Swarm algorithms are a combined set of heuristics that are used in the search of optimal solutions in applications where there is a large amount of possibilities for answers. They are versatile and used in a diverse array of problems such as, vehicle routing problems (BELL; MCMULLEN, 2004), predicting trends in the financial market (SHEN et al.,2011), optimal power flow problems (MOHAMED et al., 2017), and many others. In the search or optimal solutions, since its not necessary for the algorithm to comprehend or know completely the problem that is being analyzed, keeping high quality answers even in black box scenarios. By nature these algorithms are relatively simple to paralelize, since the components that compose the swarm are semi-independent, making it possible to execute using a large number of threads. Some applications that use swarm algorithms for problem solving explore paralelism in CPU. But most aplications dont use GPGPU computing to paralelyze the algortihms. GPU offer a high number of threads, and fast computation of basic functions that are used in the evaluation of fitness of an individual or swarm. In this way, this work evaluate and compare both CPU and GPU implementations of swarm algorithms. The obtained results shows that the performance in GPU is better than CPU when a larger number of swarm elements are used.porUniversidade Federal do PampaUNIPAMPABrasilCampus AlegreteCNPQ::CIENCIAS EXATAS E DA TERRACiência da computaçãoAlgoritmosComputação de alto desempenhoParalelismoGPUComputer scienceAlgorithmsHigh performance computingParallelismAnálise de desempenho de algoritmos de enxame paralelizados em GPUinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UNIPAMPAinstname:Universidade Federal do Pampa (UNIPAMPA)instacron:UNIPAMPAORIGINALAngelo Menezes - 2019.pdfAngelo Menezes - 2019.pdfapplication/pdf1067088https://repositorio.unipampa.edu.br/bitstreams/ab7cb936-1032-412c-b806-fcfd633d9882/download3fcffe8a0e81337bd192d8d41d57145eMD51trueAnonymousREADLICENSElicense.txtlicense.txttext/plain; charset=utf-81866https://repositorio.unipampa.edu.br/bitstreams/ff1f6e98-09b6-4317-b91e-a38fcaa0ca89/download43cd690d6a359e86c1fe3d5b7cba0c9bMD52falseAnonymousREADTEXTAngelo Menezes - 2019.pdf.txtAngelo Menezes - 2019.pdf.txtExtracted texttext/plain66731https://repositorio.unipampa.edu.br/bitstreams/092f3de7-5d6c-4c85-b985-b6b6f708d263/downloadddf2ed8b6aa6a5a5081155251f3e69f4MD53falseAnonymousREADriu/41682019-08-02 06:00:43.985open.accessoai:repositorio.unipampa.edu.br:riu/4168https://repositorio.unipampa.edu.brRepositório InstitucionalPUBhttp://dspace.unipampa.edu.br:8080/oai/requestsisbi@unipampa.edu.bropendoar:2019-08-02T06:00:43Repositório Institucional da UNIPAMPA - Universidade Federal do Pampa (UNIPAMPA)falseTElDRU7Dh0EgREUgRElTVFJJQlVJw4fDg08gTsODTy1FWENMVVNJVkEKCkNvbSBhIGFwcmVzZW50YcOnw6NvIGRlc3RhIGxpY2Vuw6dhLCB2b2PDqiAobyBhdXRvciAoZXMpIG91IG8gdGl0dWxhciBkb3MgZGlyZWl0b3MgZGUgYXV0b3IpIGNvbmNlZGUgYW8gUmVwb3NpdMOzcmlvIApJbnN0aXR1Y2lvbmFsIG8gZGlyZWl0byBuw6NvLWV4Y2x1c2l2byBkZSByZXByb2R1emlyLCAgdHJhZHV6aXIgKGNvbmZvcm1lIGRlZmluaWRvIGFiYWl4byksIGUvb3UgZGlzdHJpYnVpciBhIApzdWEgcHVibGljYcOnw6NvIChpbmNsdWluZG8gbyByZXN1bW8pIHBvciB0b2RvIG8gbXVuZG8gbm8gZm9ybWF0byBpbXByZXNzbyBlIGVsZXRyw7RuaWNvIGUgZW0gcXVhbHF1ZXIgbWVpbywgaW5jbHVpbmRvIG9zIApmb3JtYXRvcyDDoXVkaW8gb3UgdsOtZGVvLgoKVm9jw6ogY29uY29yZGEgcXVlIG8gRGVwb3NpdGEgcG9kZSwgc2VtIGFsdGVyYXIgbyBjb250ZcO6ZG8sIHRyYW5zcG9yIGEgc3VhIHB1YmxpY2HDp8OjbyBwYXJhIHF1YWxxdWVyIG1laW8gb3UgZm9ybWF0byAKcGFyYSBmaW5zIGRlIHByZXNlcnZhw6fDo28uCgpWb2PDqiB0YW1iw6ltIGNvbmNvcmRhIHF1ZSBvIERlcG9zaXRhIHBvZGUgbWFudGVyIG1haXMgZGUgdW1hIGPDs3BpYSBkZSBzdWEgcHVibGljYcOnw6NvIHBhcmEgZmlucyBkZSBzZWd1cmFuw6dhLCBiYWNrLXVwIAplIHByZXNlcnZhw6fDo28uCgpWb2PDqiBkZWNsYXJhIHF1ZSBhIHN1YSBwdWJsaWNhw6fDo28gw6kgb3JpZ2luYWwgZSBxdWUgdm9jw6ogdGVtIG8gcG9kZXIgZGUgY29uY2VkZXIgb3MgZGlyZWl0b3MgY29udGlkb3MgbmVzdGEgbGljZW7Dp2EuIApWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIG8gZGVww7NzaXRvIGRhIHN1YSBwdWJsaWNhw6fDo28gbsOjbywgcXVlIHNlamEgZGUgc2V1IGNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMgCmRlIG5pbmd1w6ltLgoKQ2FzbyBhIHN1YSBwdWJsaWNhw6fDo28gY29udGVuaGEgbWF0ZXJpYWwgcXVlIHZvY8OqIG7Do28gcG9zc3VpIGEgdGl0dWxhcmlkYWRlIGRvcyBkaXJlaXRvcyBhdXRvcmFpcywgdm9jw6ogZGVjbGFyYSBxdWUgCm9idGV2ZSBhIHBlcm1pc3PDo28gaXJyZXN0cml0YSBkbyBkZXRlbnRvciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgcGFyYSBjb25jZWRlciBhbyBEZXBvc2l0YSBvcyBkaXJlaXRvcyBhcHJlc2VudGFkb3MgCm5lc3RhIGxpY2Vuw6dhLCBlIHF1ZSBlc3NlIG1hdGVyaWFsIGRlIHByb3ByaWVkYWRlIGRlIHRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIGlkZW50aWZpY2FkbyBlIHJlY29uaGVjaWRvIG5vIHRleHRvIApvdSBubyBjb250ZcO6ZG8gZGEgcHVibGljYcOnw6NvIG9yYSBkZXBvc2l0YWRhLgoKQ0FTTyBBIFBVQkxJQ0HDh8ODTyBPUkEgREVQT1NJVEFEQSBURU5IQSBTSURPIFJFU1VMVEFETyBERSBVTSBQQVRST0PDjU5JTyBPVSBBUE9JTyBERSBVTUEgQUfDik5DSUEgREUgRk9NRU5UTyBPVSBPVVRSTyAKT1JHQU5JU01PLCBWT0PDiiBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVPDg08gQ09NTyBUQU1Cw4lNIEFTIERFTUFJUyBPQlJJR0HDh8OVRVMgCkVYSUdJREFTIFBPUiBDT05UUkFUTyBPVSBBQ09SRE8uCgpPIERlcG9zaXRhIHNlIGNvbXByb21ldGUgYSBpZGVudGlmaWNhciBjbGFyYW1lbnRlIG8gc2V1IG5vbWUgKHMpIG91IG8ocykgbm9tZShzKSBkbyhzKSBkZXRlbnRvcihlcykgZG9zIGRpcmVpdG9zIAphdXRvcmFpcyBkYSBwdWJsaWNhw6fDo28sIGUgbsOjbyBmYXLDoSBxdWFscXVlciBhbHRlcmHDp8OjbywgYWzDqW0gZGFxdWVsYXMgY29uY2VkaWRhcyBwb3IgZXN0YSBsaWNlbsOnYS4K |
| dc.title.pt_BR.fl_str_mv |
Análise de desempenho de algoritmos de enxame paralelizados em GPU |
| title |
Análise de desempenho de algoritmos de enxame paralelizados em GPU |
| spellingShingle |
Análise de desempenho de algoritmos de enxame paralelizados em GPU Menezes, Angelo Geovanni Amaral CNPQ::CIENCIAS EXATAS E DA TERRA Ciência da computação Algoritmos Computação de alto desempenho Paralelismo GPU Computer science Algorithms High performance computing Parallelism |
| title_short |
Análise de desempenho de algoritmos de enxame paralelizados em GPU |
| title_full |
Análise de desempenho de algoritmos de enxame paralelizados em GPU |
| title_fullStr |
Análise de desempenho de algoritmos de enxame paralelizados em GPU |
| title_full_unstemmed |
Análise de desempenho de algoritmos de enxame paralelizados em GPU |
| title_sort |
Análise de desempenho de algoritmos de enxame paralelizados em GPU |
| author |
Menezes, Angelo Geovanni Amaral |
| author_facet |
Menezes, Angelo Geovanni Amaral |
| author_role |
author |
| dc.contributor.advisor1.fl_str_mv |
Schepke, Claudio |
| dc.contributor.author.fl_str_mv |
Menezes, Angelo Geovanni Amaral |
| contributor_str_mv |
Schepke, Claudio |
| dc.subject.cnpq.fl_str_mv |
CNPQ::CIENCIAS EXATAS E DA TERRA |
| topic |
CNPQ::CIENCIAS EXATAS E DA TERRA Ciência da computação Algoritmos Computação de alto desempenho Paralelismo GPU Computer science Algorithms High performance computing Parallelism |
| dc.subject.por.fl_str_mv |
Ciência da computação Algoritmos Computação de alto desempenho Paralelismo GPU Computer science Algorithms High performance computing Parallelism |
| description |
Algoritmos de enxames são um conjunto de heurísticas utilizados na busca de soluções ótimas em aplicações onde existem uma infinidade de possibilidades de respostas. Eles são extremamente versáteis e bastante utilizados em uma gama de diversos problemas, como por exemplo, no roteamento de veículos (BELL; MCMULLEN, 2004), predição de tendências do mercado financeiro (SHEN et al., 2011), problemas de fluxo de potência ótimo (MOHAMED et al., 2017), entre outros. Na busca por soluções ótimas, sendo que não se é necessário aos algoritmos compreenderem ou conhecerem completamente a função a ser avaliada, mantém-se a qualidade de resposta mesmo em casos de funções black box. Por natureza, estes algoritmos tem como característica uma relativa facilidade em sua paralelização, devido a uma certa independência dos componentes que formam o enxame, sendo que eles podem ser executados em um grande número de threads. Algumas aplicações que adotam algoritmos de enxame para a resolução de um problema exploram o paralelismo oferecido em CPU. Porém, a grande maioria não utiliza da computação em GPGPU para paralelização dos algoritmos. GPU oferecem um imenso número de threads, e alto desempenho em funções de cálculo básicas que são usadas na computação de fitness de um indivíduo ou de um enxame. Desta forma, este trabalho analisa e compara o desempenho de algoritmos de enxame implementados tanto em CPU quanto em GPU. Os resultados obtidos mostram que o desempenho em GPU é superior a CPU quando um número grande de elementos de enxame é utilizado. |
| publishDate |
2019 |
| dc.date.accessioned.fl_str_mv |
2019-08-01T13:33:19Z |
| dc.date.available.fl_str_mv |
2019-08-01T13:33:19Z |
| dc.date.issued.fl_str_mv |
2019-06-24 |
| 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 |
MENEZES, Angelo Geovanni Amaral. Análise de desempenho de algoritmos de enxame paralelizados em GPU. Orientador: Claudio Schepke. 2019. 57 p. 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, 2019. |
| dc.identifier.uri.fl_str_mv |
https://dspace.unipampa.edu.br/jspui/handle/riu/4168 |
| identifier_str_mv |
MENEZES, Angelo Geovanni Amaral. Análise de desempenho de algoritmos de enxame paralelizados em GPU. Orientador: Claudio Schepke. 2019. 57 p. 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, 2019. |
| url |
https://dspace.unipampa.edu.br/jspui/handle/riu/4168 |
| dc.language.iso.fl_str_mv |
por |
| language |
por |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.publisher.none.fl_str_mv |
Universidade Federal do Pampa |
| dc.publisher.initials.fl_str_mv |
UNIPAMPA |
| dc.publisher.country.fl_str_mv |
Brasil |
| dc.publisher.department.fl_str_mv |
Campus Alegrete |
| publisher.none.fl_str_mv |
Universidade Federal do Pampa |
| dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UNIPAMPA instname:Universidade Federal do Pampa (UNIPAMPA) instacron:UNIPAMPA |
| instname_str |
Universidade Federal do Pampa (UNIPAMPA) |
| instacron_str |
UNIPAMPA |
| institution |
UNIPAMPA |
| reponame_str |
Repositório Institucional da UNIPAMPA |
| collection |
Repositório Institucional da UNIPAMPA |
| bitstream.url.fl_str_mv |
https://repositorio.unipampa.edu.br/bitstreams/ab7cb936-1032-412c-b806-fcfd633d9882/download https://repositorio.unipampa.edu.br/bitstreams/ff1f6e98-09b6-4317-b91e-a38fcaa0ca89/download https://repositorio.unipampa.edu.br/bitstreams/092f3de7-5d6c-4c85-b985-b6b6f708d263/download |
| bitstream.checksum.fl_str_mv |
3fcffe8a0e81337bd192d8d41d57145e 43cd690d6a359e86c1fe3d5b7cba0c9b ddf2ed8b6aa6a5a5081155251f3e69f4 |
| bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
| repository.name.fl_str_mv |
Repositório Institucional da UNIPAMPA - Universidade Federal do Pampa (UNIPAMPA) |
| repository.mail.fl_str_mv |
sisbi@unipampa.edu.br |
| _version_ |
1848608616543682560 |