3. Exercício - Hierarquia de memória

Autor: Luke
Data:09/08/2010

C. Exercício de programação: Convolução Unidimencional

Programa Simples 3_1 :

Link: Ok.

Tudo feito em Memória global, cada thread faz a convolução de um pixel. Um if interno faz o tratamento das bordas e alocações extras.

Resultado:
  • Sinal: 200000
  • Mascara: 7
  • Tempo na GPU: 47.2209453583
  • Tempo na CPU: 9.38606262207
  • Ratio : 5.03096423491

Programa Simples 3_2 :

Link: Ok.

Sinal em Memória global e mascara em __static__ , cada thread faz a convolução de um pixel. Tratamento das bordas e alocações extras feita com if

Resultado:
  • Sinal: 200000, e Mascara: 7
  • Tempo na GPU: 33.8480472565
  • Tempo na CPU: 9.48882102966
  • Ratio : 3.56714992839

Programa Simples 3_3 :

Link: Desenvolvimento.

Sinal em Memória __shared__ e mascara em __static__ , cada thread faz a convolução de um pixel. Tratamento das bordas e alocações extras feita com if

Resultado: