Otimizando um Kernel de Multiplicação de Matrizes em CUDA com Tensor Cores
2025-04-19
Esta publicação detalha a jornada do autor para escrever um kernel de multiplicação de matrizes otimizado em CUDA usando núcleos tensoriais em uma GPU NVIDIA Tesla T4. O objetivo era calcular D = α * A * B + β * C o mais rápido possível. Através da otimização iterativa de seis kernels, o autor alcançou desempenho comparável à implementação cuBLAS hgemm da NVIDIA, destacando técnicas como tiling hierárquico, exploração da hierarquia de memória, reutilização de dados, sobreposição de computação com movimentação de dados e uso eficiente de Tensor Cores. O autor compartilha insights obtidos por meio de profiling e otimização, enfatizando a importância da intensidade aritmética e largura de banda de memória.
Desenvolvimento