Processamento de áudio em tempo real por GPU
José Ernesto Barbosa1, Juliano Vieira da Rocha 1
1
Instituto de Ciências Exatas (ICET) – Universidade FEEVALE
Novo Hamburgo – RS – Brasil
ernestosbarbosa@terra.com.br, julianov.rocha@gmail.com
Resumo. Nosso artigo partiu inicialmente do trabalho denominado
“Processamento de áudio em tempo real em dispositivos computacionais de alta disponibilidade e baixo custo” de André Jucovsky Bianchi para a
Universidade de São Paulo.
Neste trabalho foi feita uma investigação sobre a realização de processamento de áudio digital em tempo real especificando as diferenças de processamento entre três plataformas de processamentos distintas, para nosso trabalho nos foi sugerida o aprofundamento sobre uma delas, que optamos pela forma de processamento por GPU.
Este artigo tratará de um tema que está cada vez mais recorrente na área da programação, falaremos sobre placas GPU’s e sua adaptação para uso geral.
Estas placas inicialmente foram desenhadas com o objetivo de melhoria do uso do processador, mas que tinha como finalidade cálculos paralelos, método bastante utilizado em processamento de imagens.
Por esta visão do SO os programadores estão podendo dar usos diversos a esta placa, utilizando-a também para processamento de dados de áudio digital, que será o tema de maior relevância neste artigo.
Falaremos sobre GPU’s e suas arquiteturas de hardware e programação, com destaque especial para a arquitetura CUDA, a qual abrange hardware e software. Descreveremos programação paralela e também os motivos pelos quais se está utilizando esta técnica de processamento, de que forma é adaptado este procedimento.
1. O que é GPU? Uma breve história
Graphics Processing Unit (unidade de processamento gráfico) ou GPU, trata-se de um circuito especialmente projetado para processamento paralelo de imagens bi ou tri dimensionais, as quais necessitam do processamento de um grande volume dados, que são as imagens