Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação

Detalhes bibliográficos
Autor(a) principal: Vieira, Leonardo Santana
Data de Publicação: 2023
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da Universidade Federal Fluminense (RIUFF)
Texto Completo: http://app.uff.br/riuff/handle/1/30823
Resumo: Atualmente vivemos um cenário em que é cada vez mais necessário otimizar a forma como tratamos os dados disponíveis, isto devido ao substancial aumento no volume destes para serem analisados e transformados em informação, por isso se faz necessário o desenvolvimento de novas técnicas mais eficientes para tratar grandes volumes de dados. O Dual Scaling é uma dessas técnicas e tem por objetivo mapear itens e transações de uma base de dados como pontos em um espaço multidimensional, onde as distâncias entre os mesmos demonstram o quão relacionados são os itens na base de dados. Entretanto, o modelo matemático utilizado por esta técnica é altamente custoso e o fato de só existirem implementações sequenciais disponíveis na literatura somente amplia este problema. Neste trabalho, é utilizada a plataforma de computação paralela CUDA e a biblioteca Cusp para o desenvolvimento de uma implementação paralela do algoritmo de Dual Scaling. Após o detalhamento da solução, são realizados testes comparando o tempo de execução desta solução a uma implementação sequencial em C++ utilizando a biblioteca Eigen e através destes testes é possível verificar a redução do tempo de processamento da implementação proposta
id UFF-2_d34b7fdc5064865aea0c3092470cf9a2
oai_identifier_str oai:app.uff.br:1/30823
network_acronym_str UFF-2
network_name_str Repositório Institucional da Universidade Federal Fluminense (RIUFF)
repository_id_str 2120
spelling Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificaçãoDual scalingCUDACuspC++Programação paralelaC++ (Linguagem de programação de computador)Programação paralela (Computação)Gerenciamento de dadosParallel programmingAtualmente vivemos um cenário em que é cada vez mais necessário otimizar a forma como tratamos os dados disponíveis, isto devido ao substancial aumento no volume destes para serem analisados e transformados em informação, por isso se faz necessário o desenvolvimento de novas técnicas mais eficientes para tratar grandes volumes de dados. O Dual Scaling é uma dessas técnicas e tem por objetivo mapear itens e transações de uma base de dados como pontos em um espaço multidimensional, onde as distâncias entre os mesmos demonstram o quão relacionados são os itens na base de dados. Entretanto, o modelo matemático utilizado por esta técnica é altamente custoso e o fato de só existirem implementações sequenciais disponíveis na literatura somente amplia este problema. Neste trabalho, é utilizada a plataforma de computação paralela CUDA e a biblioteca Cusp para o desenvolvimento de uma implementação paralela do algoritmo de Dual Scaling. Após o detalhamento da solução, são realizados testes comparando o tempo de execução desta solução a uma implementação sequencial em C++ utilizando a biblioteca Eigen e através destes testes é possível verificar a redução do tempo de processamento da implementação propostaCurrently we live in a scenario where it is increasingly necessary to optimize the way we treat available data, due to the substantial increase in the volume of data to be analyzed and transformed into information, so it is necessary to develop new techniques, more efficient in handling large volumes of data. Dual Scaling is one such technique and aims to map items and transactions from a database as points in a multidimensional space, where the distance between them demonstrates how closely the items in the database are related. However, the mathematical model used by this technique is highly costly and the fact that there are only sequential implementations available on the market only magnifies this problem. In this work, the CUDA parallel computing platform and the Cusp library are used to develop a parallel implementation of the Dual Scaling algorithm. After detailing the solution, tests are performed comparing the execution time of this solution to a sequential implementation in C ++ using the Eigen library and through these tests it is possible to verify the reduced processing time of the proposed implementation41 p.Mantuan, Altobelli de Britohttp://lattes.cnpq.br/5002413550846760Martins, Simone de Limahttp://lattes.cnpq.br/5202429302236084Vieira, Leonardo Santana2023-10-17T14:35:18Z2023-10-17T14:35:18Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisapplication/pdfVIEIRA, Leonardo Santana. Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação. 2019. 41 f. Trabalho de Conclusão de Curso (Graduação em Tecnologia em Sistemas de Computação) - Instituto de Computação, Universidade Federal Fluminense, Niterói, 2019.http://app.uff.br/riuff/handle/1/30823CC-BY-SAinfo:eu-repo/semantics/openAccessporreponame:Repositório Institucional da Universidade Federal Fluminense (RIUFF)instname:Universidade Federal Fluminense (UFF)instacron:UFF2023-10-17T14:35:22Zoai:app.uff.br:1/30823Repositório InstitucionalPUBhttps://app.uff.br/oai/requestriuff@id.uff.bropendoar:21202023-10-17T14:35:22Repositório Institucional da Universidade Federal Fluminense (RIUFF) - Universidade Federal Fluminense (UFF)false
dc.title.none.fl_str_mv Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
title Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
spellingShingle Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
Vieira, Leonardo Santana
Dual scaling
CUDA
Cusp
C++
Programação paralela
C++ (Linguagem de programação de computador)
Programação paralela (Computação)
Gerenciamento de dados
Parallel programming
title_short Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
title_full Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
title_fullStr Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
title_full_unstemmed Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
title_sort Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação
author Vieira, Leonardo Santana
author_facet Vieira, Leonardo Santana
author_role author
dc.contributor.none.fl_str_mv Mantuan, Altobelli de Brito
http://lattes.cnpq.br/5002413550846760
Martins, Simone de Lima
http://lattes.cnpq.br/5202429302236084
dc.contributor.author.fl_str_mv Vieira, Leonardo Santana
dc.subject.por.fl_str_mv Dual scaling
CUDA
Cusp
C++
Programação paralela
C++ (Linguagem de programação de computador)
Programação paralela (Computação)
Gerenciamento de dados
Parallel programming
topic Dual scaling
CUDA
Cusp
C++
Programação paralela
C++ (Linguagem de programação de computador)
Programação paralela (Computação)
Gerenciamento de dados
Parallel programming
description Atualmente vivemos um cenário em que é cada vez mais necessário otimizar a forma como tratamos os dados disponíveis, isto devido ao substancial aumento no volume destes para serem analisados e transformados em informação, por isso se faz necessário o desenvolvimento de novas técnicas mais eficientes para tratar grandes volumes de dados. O Dual Scaling é uma dessas técnicas e tem por objetivo mapear itens e transações de uma base de dados como pontos em um espaço multidimensional, onde as distâncias entre os mesmos demonstram o quão relacionados são os itens na base de dados. Entretanto, o modelo matemático utilizado por esta técnica é altamente custoso e o fato de só existirem implementações sequenciais disponíveis na literatura somente amplia este problema. Neste trabalho, é utilizada a plataforma de computação paralela CUDA e a biblioteca Cusp para o desenvolvimento de uma implementação paralela do algoritmo de Dual Scaling. Após o detalhamento da solução, são realizados testes comparando o tempo de execução desta solução a uma implementação sequencial em C++ utilizando a biblioteca Eigen e através destes testes é possível verificar a redução do tempo de processamento da implementação proposta
publishDate 2023
dc.date.none.fl_str_mv 2023-10-17T14:35:18Z
2023-10-17T14:35:18Z
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.uri.fl_str_mv VIEIRA, Leonardo Santana. Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação. 2019. 41 f. Trabalho de Conclusão de Curso (Graduação em Tecnologia em Sistemas de Computação) - Instituto de Computação, Universidade Federal Fluminense, Niterói, 2019.
http://app.uff.br/riuff/handle/1/30823
identifier_str_mv VIEIRA, Leonardo Santana. Implementação paralela em cuda de algoritmo dual scaling em dados de ordem de classificação. 2019. 41 f. Trabalho de Conclusão de Curso (Graduação em Tecnologia em Sistemas de Computação) - Instituto de Computação, Universidade Federal Fluminense, Niterói, 2019.
url http://app.uff.br/riuff/handle/1/30823
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv CC-BY-SA
info:eu-repo/semantics/openAccess
rights_invalid_str_mv CC-BY-SA
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da Universidade Federal Fluminense (RIUFF)
instname:Universidade Federal Fluminense (UFF)
instacron:UFF
instname_str Universidade Federal Fluminense (UFF)
instacron_str UFF
institution UFF
reponame_str Repositório Institucional da Universidade Federal Fluminense (RIUFF)
collection Repositório Institucional da Universidade Federal Fluminense (RIUFF)
repository.name.fl_str_mv Repositório Institucional da Universidade Federal Fluminense (RIUFF) - Universidade Federal Fluminense (UFF)
repository.mail.fl_str_mv riuff@id.uff.br
_version_ 1825433317139283968