Github url


by taichi-dev

taichi-dev /taichi

Productive & portable programming language for high-performance, sparse & differentiable computing

11.5K Stars 1.2K Forks Last release: 3 days ago (v0.6.18) MIT License 6.4K Commits 32 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Tutorial | Examples | Contributor Guidelines | Forum

Documentation | 简体中文文档

Travis CI StatusAppVeyor StatusDocker Cloud Build StatusPython Codecov StatusLatest Release


Taichi (太极) is a programming language designed for high-performance computer graphics. It is deeply embedded in Python, and its just-in-time compiler offloads compute-intensive tasks to multi-core CPUs and massively parallel GPUs.

Advanced features of Taichi include spatially sparse computing and differentiable programming [examples].


Installation Downloads

python3 -m pip install taichi

Supported OS: Windows, Linux, Mac OS X; Python: 3.6/3.7/3.8 (64-bit only); Backends: x64 CPUs, CUDA, Apple Metal, OpenGL Compute Shaders.

Please build from source for other configurations (e.g., your CPU is ARM).

Note: - Starting April 13 2020 (v0.5.12), we release the Python package [


]( instead of [


]( Now this PyPI package includes CPU, CUDA 10/11, Metal and OpenGL support. - On Ubuntu 19.04+, please

sudo apt install libtinfo5

. - On Windows, please install Microsoft Visual C++ Redistributable if you haven't. - [All releases]

|| Linux (CUDA) | OS X (10.14+) | Windows | Documentation| |:------|:-----|:-----|:-----|:-----| |Build|Build Status| Build Status | Build status| Documentation Status| |PyPI|Build Status|Build Status|Build status |


  • Taichi GLSL: A Taichi extension library providing a set of GLSL-alike helper functions.
  • Taichi THREE: A 3D rendering library based on Taichi (work in progress).
  • Taichi Elements: A High-Performance Multi-Material Continuum Physics Engine based on Taichi (work in progress).


The Taichi project was created by Yuanming Hu (yuanming-hu). Significant contributions are made by: - Ye Kuang (k-ye) (Apple Metal backend) - 彭于斌 (archibate) (OpenGL Compute Shader backend) - Mingkuan Xu (xumingkuan) (IR optimization & standardization)

Kenneth Lozes (KLozes) and Yu Fang (squarefk) have also made notable contributions.

[List of all contributors to Taichi]

The Simplified Chinese documentation (简体中文文档) was created by Ark (StephenArk30). Significant contributions are made by: - 彭于斌 (archibate) - Danni Li (isdanni) - Chengchen Wang (rexwangcc) - 万健洲 (ArkhamWJZ)

[List of all contributors to the Simplified Chinese documentation of Taichi]

We welcome feedback and comments. If you would like to contribute to Taichi, please check out our Contributor Guidelines.

If you use Taichi in your research, please cite our papers:

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.