Tópico dedicado a conceitos de Machine Learning, com mapeamento de…
INEMA
Aqui está uma explicação clara, simples e direta dos termos que apareceram nas respostas anteriores, especialmente relacionados a PyTorch, CUDA, ARM64 e builds nightlies.
📘 Explicação dos Termos⌗
1. PyTorch⌗
Uma biblioteca de machine learning muito usada para treinar e executar modelos de IA (redes neurais). Ela depende de binários específicos para cada sistema operacional, arquitetura e versão da CUDA.
2. Nightly Builds⌗
São versões beta geradas todas as noites automaticamente pelo PyTorch.
- Contêm recursos novos antes do lançamento oficial.
- Podem ter bugs.
- Podem falhar ou ficar indisponíveis em algumas plataformas (como ARM64).
Você as instala com:
pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cu128
(Não funciona no ARM64 com CUDA atualmente.)
3. Aarch64 / ARM64⌗
É uma arquitetura de processador, diferente do x86_64 (Intel/AMD).
- ARM64 é usada em Jetson, Raspberry Pi, alguns servidores, Apple M1/M2/M3 (modificado), etc.
- Aarch64 = nome técnico do ARM64.
PyTorch tem menos suporte oficial para essa arquitetura, especialmente com GPU CUDA.
4. CUDA⌗
Biblioteca da NVIDIA para usar GPUs em operações de IA.
- Permite acelerar o processamento neural.
- Cada versão do CUDA suporta certos modelos de GPUs.
Exemplo: CUDA 12.8 suporta GPUs de arquitetura Blackwell (sm_120).
5. CUDA + ARM64⌗
União de:
- Processador ARM64
- GPU NVIDIA com CUDA
Esse cenário exige wheels específicas, que atualmente não são produzidas oficialmente pelo PyTorch nas nightlies.
6. Wheel (.whl)⌗
Um arquivo instalável do Python. É o arquivo que você baixa quando usa:
pip install torch
Wheels são específicos por:
- sistema operacional (Linux/Windows)
- arquitetura (x86_64, aarch64)
- versão de CUDA (cpu, cu118, cu121, cu128)
7. sm_120 / sm_121 / Compute Capability⌗
É o "nível de capacidade computacional" de uma GPU NVIDIA. Cada geração tem um número:
- RTX 4090 → sm_89 (Ada Lovelace)
- RTX 5090 → sm_120 (Blackwell)
Para funcionar, PyTorch precisa compilar kernels CUDA com o suporte do compute capability correto.
8. CI Pipeline⌗
CI = Continuous Integration São as máquinas automáticas que:
- compilam o PyTorch
- geram wheels
- testam builds
- fazem deploy dos nightlies
No momento, o PyTorch não tem uma pipeline estável para gerar:
- wheels ARM64
- com CUDA
- para versões nightly
Por isso estão faltando builds.
9. Compilar a partir do código-fonte⌗
Significa rodar:
python setup.py develop
ou
pip install -v .
para construir PyTorch você mesmo.
Isso é necessário no ARM64 + CUDA, pois não existem wheels prontas.
10. Release estável⌗
A versão oficialmente suportada, sem ser nightly.
Exemplo:
pip install torch==2.5.0
Tem menos bugs, mas às vezes não inclui suporte a GPUs muito novas.
11. x86_64⌗
Arquitetura tradicional de PCs:
- Intel
- AMD
É a plataforma que recebe suporte completo e prioritário do PyTorch.
12. Jetson / ARM Servers⌗
Equipamentos comuns que usam ARM64:
- NVIDIA Jetson Nano / Xavier / Orin
- Servidores com processadores ARM (Ampere, AWS Graviton, NVIDIA Grace)
O suporte PyTorch varia muito entre eles.
Conceitos de Machine Learning
1