Curso Programacao Paralela e SIMD com Mojo

  • RPA | IA | AGI | ASI | ANI | IoT | PYTHON | DEEP LEARNING

Curso Programacao Paralela e SIMD com Mojo

32 horas
Visão Geral

O curso Programação Paralela e SIMD com Mojo é focado no desenvolvimento de aplicações extremamente performáticas, explorando paralelismo, vetorização SIMD e otimizações de baixo nível, utilizando a linguagem Mojo.

O curso aborda desde os fundamentos de execução paralela até técnicas avançadas usadas em IA, Machine Learning, HPC, Data Science e processamento numérico intensivo, permitindo que o aluno extraia o máximo do hardware moderno (CPU e vetores).

Objetivo

Após realizar este curso Programação Paralela e SIMD com Mojo, você será capaz de:

  • Entender como CPUs modernas executam código paralelo
  • Implementar paralelismo seguro e eficiente em Mojo
  • Utilizar SIMD para acelerar operações numéricas
  • Escrever código vetorizado de alto desempenho
  • Evitar race conditions e gargalos comuns
  • Otimizar aplicações para IA e processamento massivo de dados
Publico Alvo
  •  
  • Desenvolvedores Mojo intermediários e avançados
  • Desenvolvedores Python focados em performance
  • Engenheiros de IA e Machine Learning
  • Cientistas de Dados
  • Engenheiros de Software
  • Profissionais interessados em HPC e computação paralela
  •  
Pre-Requisitos
  •  
  • Conhecimento prévio em Mojo Fundamentals
  • Experiência com Python
  • Noções de estruturas de dados
  • Desejável: conhecimentos básicos de arquitetura de computadores
  •  
Materiais
Ingles/Portugues
Conteúdo Programatico

1. Fundamentos de Computação Paralela

  1. Evolução do hardware moderno
  2. CPUs multicore e pipelines
  3. Paralelismo vs concorrência
  4. Latência, throughput e escalabilidade
  5. Onde Mojo se destaca

2. Arquitetura de Processadores e SIMD

  1. Registradores vetoriais
  2. Instruções SIMD (AVX, AVX2, AVX-512 – visão conceitual)
  3. Diferença entre código escalar e vetorizado
  4. Impacto da memória no desempenho SIMD
  5. Limites e cuidados com vetorização

3. Modelo de Execução Paralela do Mojo

  1. Filosofia de paralelismo do Mojo
  2. Execução paralela segura
  3. Relação entre paralelismo e ownership
  4. Comparação com Python (GIL)
  5. Comparação com C++ e Rust

4. Paralelismo de Dados (Data Parallelism)

  1. Processamento em lote
  2. Divisão de dados (chunking)
  3. Loops paralelos
  4. Redução (reduce)
  5. Map e transformações paralelas

5. Paralelismo de Tarefas (Task Parallelism)

  1. Execução de tarefas independentes
  2. Sincronização
  3. Dependências entre tarefas
  4. Granularidade de tarefas
  5. Padrões comuns de paralelismo

6. SIMD em Mojo – Fundamentos

  1. Tipos vetoriais
  2. Operações vetoriais
  3. Alinhamento de memória
  4. Vetorização manual vs automática
  5. Quando usar SIMD explicitamente

7. SIMD Avançado

  1. Operações matemáticas vetorizadas
  2. Processamento de arrays e matrizes
  3. Filtros e transformações numéricas
  4. Evitando branch divergence
  5. Técnicas de loop unrolling

8. Paralelismo + SIMD (Híbrido)

  1. Combinação de threads e vetores
  2. Escalando em múltiplos núcleos
  3. Balanceamento de carga
  4. Evitando false sharing
  5. Estratégias híbridas de otimização

9. Segurança, Sincronização e Race Conditions

  1. Data races e deadlocks
  2. Uso seguro de dados compartilhados
  3. Ownership aplicado ao paralelismo
  4. Boas práticas de sincronização
  5. Debugging de código paralelo

10. Benchmarking e Profiling

  1. Medição de performance
  2. Comparação código sequencial vs paralelo
  3. Comparação escalar vs SIMD
  4. Análise de speedup
  5. Interpretação de resultados

11. Casos Reais de Uso

  1. Processamento numérico em larga escala
  2. Pipelines de IA e ML
  3. Operações vetoriais em Data Science
  4. Simulações computacionais
  5. Comparação Python vs Mojo

12. Projeto Prático Avançado

  1. Código Python sequencial
  2. Reescrita paralela em Mojo
  3. Aplicação de SIMD
  4. Otimização progressiva
  5. Benchmark final e relatório técnico

13. Boas Práticas Profissionais

  1. Quando paralelizar
  2. Quando usar SIMD
  3. Evitando over-engineering
  4. Checklist de performance
  5. Padrões para projetos corporativos
TENHO INTERESSE

Cursos Relacionados

Curso AI ML Toolkits with Kubeflow Foundation

24 horas

Curso Container Management with Docker

24 Horas

Curso Machine Learning Python & R In Data Science

32 Horas

Curso Docker for Developers and System Administrators

16 horas

Curso artificial inteligence AI for Everyone Foundation

16 horas

Curso IA Inteligência Artificial e Código Aberto Foundation

16 horas

Curso Artificial Intelligence with Azure

24 Horas

Curso RPA Robotic Process Automation Industria 4.0

32 horas