Metodologia Ocupância
description
Transcript of Metodologia Ocupância
1 – Introdução
Antes do CUDA 6.5 o cálculo da ocupância de um determinado kernel da GPU era complexo e por isso muitos programadores optavam por usar a planilha calculadora de ocupância, disponibilizada pela NVIDIA, em vez de fazer a implementação do cálculo. A partir do CUDA 6.5 foi disponibilizada uma API que oferece funções em tempo de execução calcular a ocupância.
Fonte: http://devblogs.nvidia.com/parallelforall/cuda-pro-tip-occupancy-api-simplifies-launch-configuration
2 – Objetivo
Definir uma metodologia para medição de desempenho para determinado algoritmo executado no kernel que relacione a ocupância com a utilização de recursos.
3 – MetodologiaA princípio, a função cudaOccupancyMaxActiveBlocksPerMultiprocessor que é o núcleo da calculadora da NVIDIA e prediz a ocupância em termos do tamanho do bloco e uso de memória compartilhada de um kernel, foi usada para calcular a ocupância.A figura 1 mostra a função de acordo com a documentação da NVIDIA para o CUDA 7.5.
Fonte: http://docs.nvidia.com/cuda/cuda-driver-api/index.html#ixzz3oDWa7dlZ
EXPLICAR O CÁLCULO...
4 – ResultadosUsamos a função cudaOccupancyMaxPotentialBlockSize para calcular dinamicamente tamanhos de blocos que atinjam na toria uma ocupância máxima.
5
5 - Conclusão