Autores

5408
Vinicius Dalto do Nascimento
2452,312
5409
2452,312

Informações:

Publicações do PESC

Título
Filtragem Colaborativa Como Serviço Utilizando Processamento na GPU
Linha de pesquisa
Engenharia de Dados e Conhecimento
Tipo de publicação
Dissertação de Mestrado
Número de registro
Data da defesa
3/4/2013
Resumo

Atualmente um algoritmo largamente utilizado em sistemas de recomendação é o Filtro Colaborativo (FC), que tem o objetivo de recomendar itens ou prever a avaliação de um item para um usuário utilizando como base os dados dos usuários similares à ele. Alguns trabalhos tentaram reduzir o tempo de recomendação do FC utilizando paralelismo com threads na CPU mesmo com threads na GPU (Central Processing Unit) (Graphical Processing Unit) [1] e até [2]. Atualmente as GPUs modernas manipulam operações matemáticas com eficiência e suas estruturas de processamento paralelo as tornam mais capazes neste tipo de trabalho que CPUs normais. Com a larga utilização de GPUs, sendo até mesmo utilizadas nos top500 [3] computadores mais poderosos do mundo, este trabalho irá propor uma arquitetura que utilizará um FC como serviço tendo o processamento feito na GPU. Mostraremos uma arquitetura escalável, onde em nossos experimentos utilizaremos bases de dados relativamente grandes como a do Movielens [4] e Netflix [5]. Como a memória global das GPUs atualmente são relativamente menores que as memórias principais dos sistemas, tentaremos resolver o problema no qual as matrizes do algoritmo de FC não possuem espaço suficiente na memória da GPU. Utilizamos algumas tarefas apresentadas no artigo [1] para efeito de comparação de desempenho e poderemos vericar que realmente há um grande aumento de performance em nossa arquitetura utilizando GPU.

Abstract

Now a days an algorithm widely used in recommendation systems is Collaborative Filtering (CF), which aims to recommend items or provide a item recommendation for a user on using user data similar to him. Some studies have tried to shorten the recommendation of FC using parallelism with threads on the CPU (Central Processing Unit) [1] and even threads on the GPU (Graphical Processing Unit) [2]. Modern GPUs eficiently handle mathematical operations and parallel processing structure makes them more capable in this type of work that mainstream CPUs. With the widespread use of GPUs, even being used in TOP500 [3] most powerful computers in the world, this work proposes an architecture that uses CF as service having the processing done on the GPU. We present a scalable architecture, which we use in our experiments relatively large databases such as the Movielens [4] and Netflix [5]. The global memory of the GPUs today are relatively smaller than the main memory of systems, we tryed to solve the problem in which the matrix of the algorithm FC does not have enough space in GPU memory. We used some tasks presented in the article [1] for performance comparison and we can see that there is a really big performance boost in our architecture using GPU.

Topo