Na semana passada, @NVIDIA apresentou o CUDA 13.1, e nele um novo paradigma de programação de computação paralela - tiles. O CUDA "tradicional" expõe um modelo de hardware e programação de múltiplos threads com uma única instrução (SIMT) para os desenvolvedores. 1/6
Este paradigma permite a máxima flexibilidade, mas pode tornar-se tedioso e difícil de otimizar. O paradigma de azulejos toma tensores como os objetos fundamentais e trabalha a partir disso. É uma camada intermédia para linguagens de nível superior. 2/6
A programação baseada em blocos permite que você programe seu algoritmo especificando pedaços de dados, ou blocos, e depois definindo os cálculos realizados nesses blocos. 3/6
Não precisa definir como o seu algoritmo é executado a nível de elemento por elemento: o compilador e o tempo de execução tratarão disso por si. 4/6
Curiosamente, a programação baseada em tiles estará disponível primeiro para o desenvolvimento em Python, através do cuTile Python. A linguagem de programação tradicionalmente de topo para CUDA, C++, será lançada mais tarde. 5/6
10,8K