Skip to main content

Latest Release downloads CI Nightly Release discord invitation link

pip install taichi  # Install Taichi Lang
ti gallery          # Launch demo gallery

What is Taichi Lang?

Taichi Lang is an open-source, imperative, parallel programming language for high-performance numerical computation. It is embedded in Python and uses just-in-time (JIT) compiler frameworks, for example LLVM, to offload the compute-intensive Python code to the native GPU or CPU instructions.

The language has broad applications spanning real-time physical simulation, numerical computation, augmented reality, artificial intelligence, vision and robotics, visual effects in films and games, general-purpose computing, and much more.

...More

Why Taichi Lang?

  • Built around Python: Taichi Lang shares almost the same syntax with Python, allowing you to write algorithms with minimal language barrier. It is also well integrated into the Python ecosystem, including NumPy and PyTorch.
  • Flexibility: Taichi Lang provides a set of generic data containers known as SNode (/ˈsnoʊd/), an effective mechanism for composing hierarchical, multi-dimensional fields. This can cover many use patterns in numerical simulation (e.g. spatially sparse computing).
  • Performance: With the @ti.kernel decorator, Taichi Lang's JIT compiler automatically compiles your Python functions into efficient GPU or CPU machine code for parallel execution.
  • Portability: Write your code once and run it everywhere. Currently, Taichi Lang supports most mainstream GPU APIs, such as CUDA and Vulkan.
  • ... and many more features! A cross-platform, Vulkan-based 3D visualizer, differentiable programming, quantized computation (experimental), etc.

Getting Started

Installation

Prerequisites
  • Operating systems
    • Windows
    • Linux
    • macOS
  • Python: 3.6 ~ 3.10 (64-bit only)
  • Compute backends
    • x64/ARM CPUs
    • CUDA
    • Vulkan
    • OpenGL (4.3+)
    • Apple Metal
    • WebAssembly (experiemental)

Use Python's package installer pip to install Taichi Lang:

pip install --upgrade taichi

We also provide a nightly package. Note that nightly packages may crash because they are not fully tested. We cannot guarantee their validity, and you are at your own risk trying out our latest, untested features. The nightly packages can be installed from our self-hosted PyPI (Using self-hosted PyPI allows us to provide more frequent releases over a longer period of time)

pip install -i https://pypi.taichi.graphics/simple/ taichi-nightly

Run your "Hello, world!"

Here is how you can program a 2D fractal in Taichi:

# python/taichi/examples/simulation/fractal.py

import taichi as ti

ti.init(arch=ti.gpu)

n = 320
pixels = ti.field(dtype=float, shape=(n * 2, n))


@ti.func
def complex_sqr(z):
    return ti.Vector([z[0]**2 - z[1]**2, z[1] * z[0] * 2])


@ti.kernel
def paint(t: float):
    for i, j in pixels:  # Parallelized over all pixels
        c = ti.Vector([-0.8, ti.cos(t) * 0.2])
        z = ti.Vector([i / n - 1, j / n - 0.5]) * 2
        iterations = 0
        while z.norm() < 20 and iterations < 50:
            z = complex_sqr(z) + c
            iterations += 1
        pixels[i, j] = 1 - iterations * 0.02


gui = ti.GUI("Julia Set", res=(n * 2, n))

for i in range(1000000):
    paint(i * 0.03)
    gui.set_image(pixels)
    gui.show()

If Taichi Lang is properly installed, you should get the animation below 🎉:

See Get started for more information.

Build from source

If you wish to try our experimental features or build Taichi Lang for your own environments, see Developer installation.

Documentation

Community activity Time period

Timeline graph Issue status graph Pull request status graph Trending topics

Contributing

Kudos to all of our amazing contributors! Taichi Lang thrives through open-source. In that spirit, we welcome all kinds of contributions from the community. If you would like to participate, check out the Contribution Guidelines first.

Contributor avatars are randomly shuffled.

License

Taichi Lang is distributed under the terms of Apache License (Version 2.0).

See Apache License for details.

Community

For more information about the events or community, please refer to this page

Join our discussions

Report an issue

Contact us

Reference

Demos

AOT deployment

Lectures & talks

Citations

If you use Taichi Lang in your research, please cite the corresponding papers:

Metadata

Release files for taichi 1.7.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for taichi 1.7.4
File
taichi-1.7.4-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
taichi-1.7.4-cp313-cp313-manylinux_2_27_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64 Details
taichi-1.7.4-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
taichi-1.7.4-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
taichi-1.7.4-cp312-cp312-manylinux_2_27_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64 Details
taichi-1.7.4-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
taichi-1.7.4-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
taichi-1.7.4-cp311-cp311-manylinux_2_27_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64 Details
taichi-1.7.4-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
taichi-1.7.4-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
taichi-1.7.4-cp310-cp310-manylinux_2_27_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64 Details
taichi-1.7.4-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
taichi-1.7.4-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
taichi-1.7.4-cp39-cp39-manylinux_2_27_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.27+ x86-64 Details

Total release size: 899.4 MB

Release files / taichi-1.7.4-cp313-cp313-win_amd64.whl

Download URL taichi-1.7.4-cp313-cp313-win_amd64.whl
Size 83.3 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
ff9847a788c2193df61626266eb2df2ce679c372cb1669ffa806e7c45722ddc7
BLAKE2b-256 checksum
How to use checksums
10430f4eac57b2eaee9e906139794eb12e752a7f8d077bbd1be695acdc9d117c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp313-cp313-manylinux_2_27_x86_64.whl

Download URL taichi-1.7.4-cp313-cp313-manylinux_2_27_x86_64.whl
Size 56.3 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64
SHA-256 checksum
How to use checksums
001ff64725e58e25ff832facc4ff1ed5ded968c64d5cd46275795999f1cce4e0
BLAKE2b-256 checksum
How to use checksums
81cd3858352ede95ad71a8bec677da440011b42df0214ee675a3dd3f0dea607a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp313-cp313-macosx_11_0_arm64.whl

Download URL taichi-1.7.4-cp313-cp313-macosx_11_0_arm64.whl
Size 50.4 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a907fc86029c4b5ba85352a77f48af14717711466def8d6d2b8b17d75311c30f
BLAKE2b-256 checksum
How to use checksums
93627a5c8562550e17054ea59e41de9b82680f19b5e45442f6967f442aeb8e60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp312-cp312-win_amd64.whl

Download URL taichi-1.7.4-cp312-cp312-win_amd64.whl
Size 83.3 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
d078481d84032d9284a12a0b78672a4a2915786d9106791fad657c09352e9565
BLAKE2b-256 checksum
How to use checksums
27325882f3fafbd981fe060c7ee96355161b82c78e7624a4460eefaf2760ea64
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp312-cp312-manylinux_2_27_x86_64.whl

Download URL taichi-1.7.4-cp312-cp312-manylinux_2_27_x86_64.whl
Size 56.3 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64
SHA-256 checksum
How to use checksums
6f1303aedae3ea25e33cef5f30259fc2f66c7f0287433c4e31bdb25fdcd4d81e
BLAKE2b-256 checksum
How to use checksums
7474c7aca2af38d38efe9ad8430864e97e87c0b0d4affa2ea6cc4aecbbcfdb0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp312-cp312-macosx_11_0_arm64.whl

Download URL taichi-1.7.4-cp312-cp312-macosx_11_0_arm64.whl
Size 50.3 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5c7d188f8a8a15f07b197aa881517ffc7459663ee25a0e36636ce347c0649353
BLAKE2b-256 checksum
How to use checksums
ef5b7c7d6b8259fba064a4b3908f67f2488efbc3104d2a2fbaba00d81d30bac2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp311-cp311-win_amd64.whl

Download URL taichi-1.7.4-cp311-cp311-win_amd64.whl
Size 83.2 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
767d977f077efcc83eb746a8dd1ccd196db782f48eac07c495922b36f8828e2c
BLAKE2b-256 checksum
How to use checksums
45350495da9f8f0afa801a8e2da262fb75814bf9a4d788946c40bfc9340bf088
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp311-cp311-manylinux_2_27_x86_64.whl

Download URL taichi-1.7.4-cp311-cp311-manylinux_2_27_x86_64.whl
Size 56.2 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64
SHA-256 checksum
How to use checksums
5c3c1624daeb1554c1a2b6ee9f9b8398bd8392d7f89fc65395f94baecf049f89
BLAKE2b-256 checksum
How to use checksums
bcc690b110c26588e9c8f1f71d1485b176e547b581075102d54aeb38d2e48ae4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp311-cp311-macosx_11_0_arm64.whl

Download URL taichi-1.7.4-cp311-cp311-macosx_11_0_arm64.whl
Size 50.4 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4cbb5a16cac228862c5da2ec71ef722e637c7a5ebf636f8f11000c2f8a9b6693
BLAKE2b-256 checksum
How to use checksums
23893a920b880e058b4d8c5b0fe1e695481725707aab5ac35b3e91295903dda0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp310-cp310-win_amd64.whl

Download URL taichi-1.7.4-cp310-cp310-win_amd64.whl
Size 83.3 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
0cd550e5f91429b6078872d1d4d366a6257c3e50171c6eed21fa4e9801810f6e
BLAKE2b-256 checksum
How to use checksums
5cb2c576be78f77759c14aa839aa650d177b880467da9da3907245668e070209
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp310-cp310-manylinux_2_27_x86_64.whl

Download URL taichi-1.7.4-cp310-cp310-manylinux_2_27_x86_64.whl
Size 56.3 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64
SHA-256 checksum
How to use checksums
42ffa0ba20b19e8695894cc4796ebefaed11cc10a1ac3704bd48a9ddfd54436e
BLAKE2b-256 checksum
How to use checksums
9cbd7c4bf1412555c69276f5d28a786f1023079bf32947c6591719d3ecc43713
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp310-cp310-macosx_11_0_arm64.whl

Download URL taichi-1.7.4-cp310-cp310-macosx_11_0_arm64.whl
Size 50.4 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9e44e74d3def16bda5203722a94d63cbbc3d04b2e0bb9d5dd7527f884c9c9a9a
BLAKE2b-256 checksum
How to use checksums
32aec9f15c432ed2424b11c7ada880bff577a51e860be20b083df51312963e2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp39-cp39-win_amd64.whl

Download URL taichi-1.7.4-cp39-cp39-win_amd64.whl
Size 83.3 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
b7d5c9b39f6bbc34a6ed7118394010c02fb6f0aebe9dc3355d3fe08b36d99720
BLAKE2b-256 checksum
How to use checksums
5e8900ae95acdee11ec511afb3605d2a3a84d1f3b1aefa371215d92ec418a24f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Release files / taichi-1.7.4-cp39-cp39-manylinux_2_27_x86_64.whl

Download URL taichi-1.7.4-cp39-cp39-manylinux_2_27_x86_64.whl
Size 56.2 MB
Tags CPython 3.9 Linux glibc 2.27+ x86-64
SHA-256 checksum
How to use checksums
a6751f395fb6dcf56a47c1180f8d123bd92fd8bb5e921a891556eaee4ebb4ee9
BLAKE2b-256 checksum
How to use checksums
07a67b6ecdd6c44f5c424d8a9542d7a4daf2bedc866a917a43e3f1be6c2e3e34
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.23

Security for taichi 1.7.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.7.4 This release

14 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page