Publicação
Mapas Auto-Organizados Ubíquos em Unidades de Processamento Gráfico
| Resumo: | Atualmente, quantidades gigantescas de informação são geradas a cada instante. Tec- nologias como a computação ubíqua (Internet Of Things), as redes sociais e outras fontes geram informação constantemente. Existe a necessidade de processar essa informação para auxiliar a tomada de decisões, muitas vezes em tempo real. Para satisfazer essa ne- cessidade, vários algoritmos têm sido idealizados com o objetivo de analisar sequências de dados e reconhecer padrões existentes nessas sequências de dados. Um desses algoritmos é o Mapa Auto-Organizado Ubíquo, ou UbiSOM, uma variante do Mapa Auto-Organizado (SOM) que permite criar um modelo com base em sequências de dados potencialmente infinitas. No entanto, o CPU pode ter dificuldade em processar sequências de dados em tempo real. Muitos algoritmos de Aprendizagem Automática utilizam a Unidade de Pro- cessamento Gráfico (GPU), para acelerar o ritmo em que as computações são efetuadas. Devido às várias oportunidades de paralelização existentes, o algoritmo UbiSOM é um bom candidato para receber uma implementação em GPU, com o potencial para aumentar o ritmo de processamento do algoritmo, com as devidas otimizações. Para esta dissertação, implementou-se uma versão do UbiSOM adaptada para execu- ção em GPU, utilizando a ferramenta Marrow, uma ferramenta para desenvolvimento de sistemas heterogéneos para C++, utilizando construções de alto nível, com o objetivo de permitir ao programador focar-se no aspeto lógico da implementação e menos nos detalhes de cada dispositivo. A utilização dessa ferramenta tem como objetivo verificar a utilidade da mesma para aplicações reais e permitir o amadurecimento dela. Nesta dissertação será discutida a implementação do algoritmo e de todo o sistema à volta desse algoritmo. Será debatido ainda o trabalho efetuado em melhorar o Marrow. Serão também discutidos os resultados obtidos em termos de performance, comparando execuções em CPU com execução aceleradas por GPU. Por fim vai-se comparar o compor- tamento do UbiSOM adaptado para GPU com o comportamento do UbiSOM original. |
|---|---|
| Autores principais: | Borrego, João Pedro Vicente Martins |
| Assunto: | UbiSOM GPU Processamento de Streams Computação Heterogénea Marrow |
| Ano: | 2018 |
| País: | Portugal |
| Tipo de documento: | dissertação de mestrado |
| Tipo de acesso: | acesso aberto |
| Instituição associada: | Universidade Nova de Lisboa |
| Idioma: | português |
| Origem: | Repositório Institucional da UNL |
| Resumo: | Atualmente, quantidades gigantescas de informação são geradas a cada instante. Tec- nologias como a computação ubíqua (Internet Of Things), as redes sociais e outras fontes geram informação constantemente. Existe a necessidade de processar essa informação para auxiliar a tomada de decisões, muitas vezes em tempo real. Para satisfazer essa ne- cessidade, vários algoritmos têm sido idealizados com o objetivo de analisar sequências de dados e reconhecer padrões existentes nessas sequências de dados. Um desses algoritmos é o Mapa Auto-Organizado Ubíquo, ou UbiSOM, uma variante do Mapa Auto-Organizado (SOM) que permite criar um modelo com base em sequências de dados potencialmente infinitas. No entanto, o CPU pode ter dificuldade em processar sequências de dados em tempo real. Muitos algoritmos de Aprendizagem Automática utilizam a Unidade de Pro- cessamento Gráfico (GPU), para acelerar o ritmo em que as computações são efetuadas. Devido às várias oportunidades de paralelização existentes, o algoritmo UbiSOM é um bom candidato para receber uma implementação em GPU, com o potencial para aumentar o ritmo de processamento do algoritmo, com as devidas otimizações. Para esta dissertação, implementou-se uma versão do UbiSOM adaptada para execu- ção em GPU, utilizando a ferramenta Marrow, uma ferramenta para desenvolvimento de sistemas heterogéneos para C++, utilizando construções de alto nível, com o objetivo de permitir ao programador focar-se no aspeto lógico da implementação e menos nos detalhes de cada dispositivo. A utilização dessa ferramenta tem como objetivo verificar a utilidade da mesma para aplicações reais e permitir o amadurecimento dela. Nesta dissertação será discutida a implementação do algoritmo e de todo o sistema à volta desse algoritmo. Será debatido ainda o trabalho efetuado em melhorar o Marrow. Serão também discutidos os resultados obtidos em termos de performance, comparando execuções em CPU com execução aceleradas por GPU. Por fim vai-se comparar o compor- tamento do UbiSOM adaptado para GPU com o comportamento do UbiSOM original. |
|---|