Voltar aos Cursos
AI023 Professional

Introdução à Programação em Triton: Um Tutorial Prático

Um tutorial científico abrangente projetado para oferecer um caminho completo de aprendizado sobre o Triton, uma linguagem baseada em Python e um compilador para escrever kernels GPU personalizados. O curso aborda modelos de programação, semântica da linguagem, comportamento numérico e otimização de desempenho, passando do cálculo básico de adição vetorial até operadores fundidos e segmentados usados em sistemas modernos de aprendizado profundo.

5.0
30.0h
561 estudantes
0 curtidas
Inteligência Artificial
Começar a Aprender

Visão Geral do Curso

📚 Resumo do Conteúdo

Um tutorial científico abrangente projetado para fornecer um caminho completo de aprendizado sobre Triton, uma linguagem baseada em Python e compilador para escrever kernels personalizados para GPU. O curso aborda modelos de programação, semântica da linguagem, comportamento numérico e otimização de desempenho, avançando desde a adição vetorial básica até operadores fundidos e segmentados usados em sistemas modernos de aprendizado profundo.

Domine a arte da engenharia de kernels de GPU de alto desempenho a partir dos princípios fundamentais.

Autor: EvoClass

Agradecimentos: Documentação do Triton e repositório GitHub do Triton.

🎯 Objetivos de Aprendizagem

  1. Definir o Triton e seu papel na pilha de software de aprendizado profundo.
  2. Distinguir o Triton do CUDA, código PyTorch em modo eager e assembly de baixo nível para GPU.
  3. Identificar quais cargas de trabalho são candidatas adequadas ao Triton e compreender a relevância da fusão de kernels e dos gargalos.
  4. Realizar uma instalação limpa do ambiente Triton e verificar a pilha de software.
  5. Implementar um kernel básico de cópia vetorial para validar a lógica do ambiente versus a lógica do kernel.
  6. Identificar e categorizar gargalos de GPU para justificar o uso da fusão de operadores do PyTorch.
  7. Definir uma instância de programa e calcular as dimensões de uma grade de lançamento 1D usando cdiv.
  8. Realizar aritmética de ponteiros para mapear IDs de programa específicos (pid) para deslocamentos de memória.
  9. Distinguir entre tensores do PyTorch (metadados do lado host) e tensores do Triton (blocos no nível do compilador).
  10. Calcular o mapeamento entre um ID de Programa (pid) e deslocamentos de memória específicos usando tl.arange.

Aulas