Warp 1.9 Lançado: Suporte CUDA 13.0, Módulos AOT e Marching Cubes totalmente Warp
Sources: https://github.com/NVIDIA/warp/releases/tag/v1.9.0, https://github.com/NVIDIA/warp/releases/tag/v1.9.0#new_tab, NVIDIA Dev Blog
TL;DR
- Warp 1.9 traz compatibilidade com o toolkit CUDA 13.0, um pipeline de Marching Cubes totalmente Warp e corrigindo um bug de deslocamento há muito tempo identificado.
- Novas ferramentas AOT permitem compilação de módulos ahead-of-time com wp.compile_aot_module() e wp.load_aot_module(), incluindo strip_hash=True para distribuir módulos pré-compilados sem enviar o código-fonte.
- O modelo de programação ganha indexação mais flexível para tipos compostos, suporte direto a IntEnum/IntFlag, alocação de arrays locais dentro de kernels com wp.zeros() e três novas operações de tile indexadas para padrões avançados de acesso à memória.
- A captura de gráfico CUDA agora tem suporte total para solucionadores, com convergência no lado do dispositivo via wp.capture_while() e opções para escolha entre verificação no host ou no dispositivo.
- Melhorias contínuas abrangem warp.sparse, warp.fem e suporte mais amplo para execução em tiles, com heurísticas automáticas e overrides manuais através de tile_size.
Contexto e antecedentes
Warp continua evoluindo como uma estrutura de programação GPU baseada em Python, voltada para kernels de alto desempenho em CPU e GPU. A versão v1.9 alinha o Warp com o toolkit CUDA 13.x e amplia as capacidades de AOT para facilitar a distribuição de artefatos pré-compilados. Um destaque importante é a implementação reescrita de Marching Cubes em Warp, transformando uma implementação anterior em CUDA C++ para Warp, executável em CPU e GPU. Essa mudança também resolve um problema antigo de deslocamento, reforçando o compromisso do Warp com correção e portabilidade. Para avaliadores da evolução do ecossistema CUDA, o CUDA Toolkit 13.0 foi lançado no começo de agosto, e o Warp oferece opções de compatibilidade para facilitar upgrades e requisitos de driver. Consulte as notas do lançamento para detalhes.
O que há de novo
Warp 1.9 traz um conjunto amplo de melhorias e capacidades novas. As mudanças mais visíveis incluem a reescrita do Marching Cubes em Warp, compatibilidade com CUDA 13.0 e um conjunto de melhorias AOT. Além do trabalho principal, a atualização oferece indexação mais flexível para tipos compostos, suporte direto a IntEnum e IntFlag dentro de funções e kernels Warp, além da capacidade de alocar arrays locais em kernels usando wp.zeros(), com esses arrays armazenados em registradores para acesso rápido. A implementação de Marching Cubes é totalmente diferenciável e contribuída pela comunidade, permitindo que rode inteiramente em Warp em CPU e GPU. A nova funcionalidade AOT introduz wp.compile_aot_module() e wp.load_aot_module(), com a opção strip_hash=True que remove hashes únicos de nomes de módulos para distribuir artefatos pré-compilados sem código Python. AOT e implantação
- wp.compile_aot_module() e wp.load_aot_module()
- strip_hash=True para remover hashes de nomes ao distribuir módulos pré-compilados
- Documentação descrevendo fluxos de AOT e planos de expansão futura Modelos e melhorias de linguagem
- Indexação mais flexível para tipos compostos (vetores, matrizes, quaternions, transforms)
- Suporte direto a IntEnum e IntFlag dentro de funções e kernels
- Visualizações no kernel que suportam formas dinâmicas e tipos de struct via atributo ptr
- wp.zeros() permite alocar arrays locais de tamanho fixo em registradores
- Três novas operações de tile indexadas para carregar, armazenar e operações atômicas com mapeamento de índice personalizado
- Suporte adequado à escrita em elementos de matriz contidos em campos de struct Algoritmos e desempenho
- Implementação de Marching Cubes totalmente diferenciável em Warp
- Solvers iterativos (CG, BiCGSTAB, GMRES) compatíveis com captura de CUDA graph; convergência no lado do dispositivo com wp.capture_while()
- warp.sparse suporta blocos de tamanho arbitrário e operações baseadas em tile com heurísticas para escolher entre execução tileada e não tileada
- warp.fem.integrate usa tiling de memória para acumulação de quadratura com seleção automática de tamanho de tile Notas de estabilidade, testes e observações
- Testes iniciais no NVIDIA Jetson Thor indicaram possivelmente falhas de segmentação ao iniciar kernels de CPU; kernels de GPU não são afetados. Resolução sugerida envolve construir Warp a partir do código-fonte com LLVM/Clang v18+.
- Funcionalidades depreciadas em lançamentos anteriores serão removidas na v1.10 (início de novembro)
- O release agradece contribuições da comunidade e orienta para o v1.9.0 no CHANGELOG.md para uma lista completa de mudanças Compatibilidade e transição
- Compatibilidade com CUDA Toolkit 13.0: duas opções: rodas Warp compiladas com CUDA 12.8 podem rodar em drivers CUDA 13.x por compatibilidade direta, ou construir com CUDA 13.x para Warp
- Distribuições PyPI de Warp continuarão a ser construídas com CUDA 12.8 durante o período de transição
- As notas do release destacam planos contínuos para ampliar fluxos de AOT em atualizações futuras Referências e fontes
- A página oficial de notas de lançamento e detalhes está disponível em: https://github.com/NVIDIA/warp/releases/tag/v1.9.0#new_tab
Por que isso importa (impacto para desenvolvedores/empresas)
Para desenvolvedores, o Warp 1.9 reduz as barreiras para distribuir kernels de alto desempenho ao permitir fluxos AOT e a distribuição de módulos pré-compilados sem expor o código-fonte. A compatibilidade com CUDA 13.0 reduz atrito para equipes que atualizam GPUs e drivers, mantendo, ao mesmo tempo, a compatibilidade com wheels construídas para CUDA 12.8. A implementação do Marching Cubes em Warp abre possibilidades para pipelines de renderização diferenciável e visualização volumétrica executados com eficiência em CPU e GPU. Os avanços em indexação, memória dentro do kernel e novas operações de tile oferecem maior controle sobre comportamento de memória e características de desempenho em cenários com matrizes esparsas e métodos de elementos finitos. Do ponto de vista de engenharia, os aprimoramentos em AOT refletem uma tendência da indústria rumo à compilação offline e distribuição de kernels pré-construídos, o que pode simplificar empacotamento de software e melhorar a latência de inicialização em ambientes de produção. A combinação de recursos—preparo para CUDA 13.0, fluxos AOT, uso de memória local mais flexível, e suporte sólido a graph capture—solidifica o Warp como uma plataforma flexível para pesquisadores e engenheiros que buscam otimizar desempenho em implantações de CPU e GPU.
Detalhes técnicos ou Implementação
| Área | Itens-chave | Observações |---|---|---| | Marching Cubes | Reescrito em Warp; totalmente diferenciável; execução em CPU e GPU | Substitui implementação anterior em CUDA C++; corrige o bug de deslocamento (#324) |AOT | wp.compile_aot_module(), wp.load_aot_module() | strip_hash=True para distribuir artefatos pré-compilados sem código-fonte |Toolkit CUDA | Compatibilidade CUDA 13.0; wheels com CUDA 12.8 durante a transição | Caminhos duais de implantação para drivers |Indexação e tipos | Indexação flexível para tipos compostos; suporte direto a IntEnum/IntFlag | Visões no kernel dinâmicas, tipos de struct via ptr |Arrays locais | wp.zeros() em kernels | Alocação em registradores para velocidade |Operações de tile | Três novas operações de tile indexadas | Padrões de acesso à memória mais avançados |Sparse e FEM | warp.sparse com blocos de tamanho arbitrário; warp.fem.integrate com tiling | Tuning automático com opção de override tile_size |Graph capture | Solvers iterativos compatíveis com CUDA graph; convergência no dispositivo via wp.capture_while() | Suporte total a graph capture |Estabilidade | Possível falha de segmentação no CPU kernels em Jetson Thor | Resolver com LLVM/Clang v18+; GPUs não afetados |Deprecações | Funcionalidades antigas serão removidas na v1.10 | Roteiro de evolução informado |
Pontos-chave para levar adiante
- Warp 1.9 avança na prontidão com CUDA 13.0 e habilita fluxos AOT com distribuição de módulos pré-compilados sem código-fonte.
- Marching Cubes totalmente em Warp facilita pipelines de renderização diferenciável em CPU/GPU.
- Novos recursos de memória e tile access ampliam a flexibilidade de kernels em matrizes esparsas e FE.
- A captura de graph CUDA mais abrangente reduz overheads e melhora a reprodutibilidade de cenários computacionais complexos.
- A transição de CUDA 12.8 para CUDA 13.x permanece suave, com opções de compatibilidade de driver e rotas de build.
FAQ
-
Qual é o foco principal do Warp 1.9?
Compatibilidade com CUDA 13.0, implementação Marching Cubes totalmente em Warp, e fluxos AOT com suporte a distribuição de módulos pré-compilados.
-
Como usar AOT em Warp 1.9?
Use wp.compile_aot_module() para compilar e wp.load_aot_module() para carregar módulos pré-compilados; a opção strip_hash=True permite distribuir artefatos sem o código Python.
-
CUDA 13.0 é suportado plenamente?
Sim, com duas opções: rodas Warp para CUDA 12.8 rodam em drivers CUDA 13.x graças à compatibilidade reversa, ou compilar contra CUDA 13.x para Warp.
-
O que mudou na captura de graph e convergência?
Solvers iterativos são totalmente compatíveis com CUDA graph, e a convergência no lado do dispositivo pode ser verificada com wp.capture_while().
-
Existem problemas conhecidos?
Testes iniciais em Jetson Thor indicaram falhas de segmentação ao iniciar kernels de CPU; recomenda-se usar LLVM/Clang v18+ ao construir Warp a partir do código-fonte.
Referências
More news
Primeira olhada no app Google Home alimentado pelo Gemini
O The Verge mostra que o Google está atualizando o app Google Home para trazer recursos do Gemini, incluindo a barra de busca Ask Home, um redesign da interface e controles por voz natural para o lar.
NVIDIA HGX B200 reduz a Intensidade de Emissões de Carbono Incorporado
O HGX B200 da NVIDIA reduz 24% da intensidade de carbono incorporado em relação ao HGX H100, ao mesmo tempo em que aumenta o desempenho de IA e a eficiência energética. Esta análise resume os dados de PCF e as novidades de hardware.
Demos fracassados de óculos com Live AI da Meta não tiveram relação com Wi‑Fi, explica o CTO
Demos ao vivo dos óculos Ray‑Ban com Live AI da Meta enfrentaram falhas constrangedoras. O CTO Andrew Bosworth explica as causas, incluindo tráfego autoimplicado e um bug raro de chamada de vídeo, e aponta que o bug foi corrigido.
OpenAI supostamente desenvolve alto-falante inteligente, óculos, gravador e pin com Jony Ive
A OpenAI estaria explorando uma família de dispositivos com o ex-chefe de design da Apple, Jony Ive, incluindo um alto-falante inteligente sem tela, óculos, um gravador de voz e um pin vestível, com lançamento previsto para o final de 2026 ou início de 2027.
Shadow Leak mostra como agentes do ChatGPT podem exfiltrar dados do Gmail via injeção de prompt
Pesquisadores de segurança demonstraram uma injeção de prompt chamada Shadow Leak que usou o Deep Research do ChatGPT para extrair dados de uma caixa de entrada do Gmail. OpenAI corrigiu a falha; o caso destaca riscos de IA com atuação autônoma.
Levar agentes de IA do conceito à produção com Amazon Bedrock AgentCore
Análise detalhada de como o Amazon Bedrock AgentCore ajuda a transformar aplicações de IA baseadas em agentes de conceito em sistemas de produção de nível empresarial, mantendo memória, segurança, observabilidade e gerenciamento de ferramentas escalável.