Plataforma Rust da NVIDIA para CUDA, com crates de runtime no host e os modelos SIMT e Tile para escrever kernels de GPU em Rust.
taichi-dev/taichi
Linguagem integrada ao Python que compila kernels numéricos com JIT para execução em CPUs e GPUs, como CUDA, Vulkan e Metal.
- Estrelas
- 28,450
- Forks
- 2,392
- Issues abertas
- 926
- Último commit
- mês passado
O que é?
Taichi Lang é uma linguagem imperativa e paralela para computação numérica de alto desempenho, integrada ao Python. Funções decoradas com @ti.kernel são compiladas em tempo de execução por uma toolchain baseada em LLVM, que gera instruções nativas para CPU ou GPU. Assim, código Python com tarefas computacionalmente pesadas pode ser executado em paralelo sem precisar ser reescrito em C++ ou CUDA.
A sintaxe é semelhante à do Python, e a linguagem se integra ao NumPy e ao PyTorch. Seus contêineres de dados, chamados SNodes, permitem descrever campos hierárquicos e multidimensionais, incluindo estruturas esparsas espacialmente. O código é escrito uma vez e pode ser direcionado a backends compatíveis, como CUDA, Vulkan, OpenGL, Apple Metal e CPUs x64/ARM.
O projeto também oferece suporte a programação diferenciável e um visualizador 3D baseado em Vulkan. A galeria e os exemplos abrangem simulação física, renderização e dinâmica de fluidos.
Recursos principais
- 01Escreva kernels com sintaxe Python e compile-os com JIT para gerar código para CPU ou GPU.
- 02Funciona com CUDA, Vulkan, OpenGL, Apple Metal e CPUs x64/ARM.
- 03Oferece suporte a estruturas de dados esparsas espacialmente por meio dos contêineres SNode.
- 04Integra-se ao NumPy e ao PyTorch.
- 05Inclui programação diferenciável e um visualizador 3D baseado em Vulkan.
Casos de uso
- Acelerar em Python simulações numéricas, como simulações de fluidos, partículas ou sistemas físicos.
- Prototipar algoritmos para GPU sem escrever código CUDA ou de shaders manualmente.
- Criar pipelines de física ou gráficos diferenciáveis.
- Desenvolver experimentos de renderização ou efeitos visuais que exigem computação paralela.
Início rápido
- 1
Instale o Taichi com pip
pip install taichi - 2
Abra a galeria de demonstrações
ti gallery
Antes de usar
- Somente Python 3.6 a 3.10, de 64 bits.
- Pacotes nightly de pré-lançamento podem falhar porque não foram totalmente testados.
Em coleções
Tópicos
Perguntas frequentes
- O que é taichi?
- Linguagem integrada ao Python que compila kernels numéricos com JIT para execução em CPUs e GPUs, como CUDA, Vulkan e Metal. Taichi Lang é uma linguagem imperativa e paralela para computação numérica de alto desempenho, integrada ao Python. Funções decoradas com @ti.kernel são compiladas em tempo de execução por uma toolchain baseada em LLVM, que gera instruções nativas para CPU ou GPU. Assim, código Python com tarefas computacionalmente pesadas pode ser executado em paralelo sem precisar ser reescrito em C++ ou CUDA.
- taichi é gratuito? Qual é a licença?
- taichi é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- taichi ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de taichi foi em 5 de out. de 2026.
- Para que posso usar taichi?
- Acelerar em Python simulações numéricas, como simulações de fluidos, partículas ou sistemas físicos. Prototipar algoritmos para GPU sem escrever código CUDA ou de shaders manualmente. Criar pipelines de física ou gráficos diferenciáveis. Desenvolver experimentos de renderização ou efeitos visuais que exigem computação paralela.
- Como instalar taichi?
- Instale o Taichi com pip: pip install taichi Abra a galeria de demonstrações: ti gallery
- Onde consigo taichi?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/taichi-dev/taichi
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Framework Python que compila funções Python comuns com JIT em kernels executados na CPU ou em GPUs NVIDIA, para simulação, robótica e ML.
Simulador de quadricópteros baseado em JAX que executa simulações diferenciáveis em lote, na CPU e na GPU, para drones Crazyflie 2.x.
Biblioteca C++ header-only para criar programas paralelos por tarefas usando grafos, com suporte a multithreading em CPU e GPUs CUDA.
Um profiler para Python que mostra o uso de CPU, GPU e memória por linha e pode gerar sugestões de otimização com IA.
Biblioteca C/C++ para otimizar malhas de triângulos, acelerar a renderização em GPUs e reduzir o tamanho do armazenamento e da transmissão das malhas.