The Taichi Programming Language
Reason this release was yanked:
taichi 0.8.6 is buggy
Project description
Overview
Taichi (太极) is a parallel programming language for high-performance numerical computations. It is 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, differentiable programming [examples], and quantized computation.
Please check out our SIGGRAPH 2020 course on Taichi basics: YouTube, Bilibili, slides (pdf).
Examples (More...)
Installation
python3 -m pip install taichi
Supported OS: Windows, Linux, Mac OS X; Python: 3.6-3.9 (64-bit only); Backends: x64 CPUs, CUDA, Apple Metal, Vulkan, OpenGL Compute Shaders.
Please build from source for other configurations (e.g., your CPU is ARM, or you want to try out our experimental C backend).
Note:
- The PyPI package supports x64 CPU, CUDA 10/11, Metal, Vulkan and OpenGL Compute Shader backends.
- On Windows, please install Microsoft Visual C++ Redistributable if you haven't.
- [All releases]
Developer Installation
Please follow this doc to learn how to build Taichi from source. Note that Taichi requires LLVM-10.0.0, and it is recommneded to use our prebuilt LLVM libraries for each platform.
Contributors
Note: contributor avatars above are randomly shuffled.
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 related papers:
- (SIGGRAPH Asia 2019) Taichi: High-Performance Computation on Sparse Data Structures [Video] [BibTex] [Code]
- (ICLR 2020) DiffTaichi: Differentiable Programming for Physical Simulation [Video] [BibTex] [Code]
- (SIGGRAPH 2021) QuanTaichi: A Compiler for Quantized Simulations [Video] [BibTex] [Code]
Links
- TaichiCon: Taichi developer conferences.
- GAMES 201 Lectures: (Chinese) A hands-on course on building advanced physics engines, based on Taichi.
- TaichiZoo: Running Taichi code in your browser 1.
- 加入太极图形.
- 太极图形课.
- More...
Security
Please disclose security issues responsibly to security@taichi.graphics.
1. TaichiZoo is still in its Beta version. If you've encountered any issue, please do not hesitate to file a bug.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for taichi-0.8.6-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6484a837157f51b69438d530f95fdf655816b7f417b1c5cd58700fe31d019a4b |
|
MD5 | 0576f87afe448d16f27479150dbd3ff9 |
|
BLAKE2b-256 | d3960e3e84739822410f8907b53a8a6bdf5bc6ef21b6a146c42a606504ef5401 |
Hashes for taichi-0.8.6-cp39-cp39-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5551acf7eaa6d51064d1aaa2c6f1f8f82bb38ed739fdcdbb0ab44d3c10b26371 |
|
MD5 | c84df2dc6f8d166d31c4298231ef6412 |
|
BLAKE2b-256 | db86f2faec3bcc41337aa7f88e0be75b34676372331220a9c3654f9f9d832f1d |
Hashes for taichi-0.8.6-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 081ab85777e67868b33160fcd552b9baa7ed76aad63bd6fd11c4d517b78ac310 |
|
MD5 | 90845fda3af47442d2ba1c6fa5de1d7e |
|
BLAKE2b-256 | 3157a011ab62f29d7a1b3f2e6b150ac26c87a4b34368db7a5e9526f41c39796f |
Hashes for taichi-0.8.6-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9e2fc3bcd7669c84ba562fc670361038124c131791796f3cf8af262e284b5436 |
|
MD5 | c632ef13763cc13536028d5c265f6df6 |
|
BLAKE2b-256 | fc815d49637367079cc65b708b67e5d216000afb4b74a50b73a62937b487614f |
Hashes for taichi-0.8.6-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45655e2f0bc9f580cd2e5abfb270b35a4aa5ff7c50e5bf58fae674ae4c278766 |
|
MD5 | c6135c1eb49f2e0a3a032fd8bb55a273 |
|
BLAKE2b-256 | 2761fe381ad3ac9588b43f9230d85f38f170328c257614a32eebff5ff2069262 |
Hashes for taichi-0.8.6-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7190d53cec8298b4e1c95a500a0163be726fa188592273d34765a045b60fc994 |
|
MD5 | 847b7c2f71fc4e944c449240df791915 |
|
BLAKE2b-256 | c7057407463cbb32e15f8c2bf828df01a3ebca213448db1b2f79fa8c586c9b56 |
Hashes for taichi-0.8.6-cp38-cp38-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09b05f39dc96672799d320f9f38ddfc0f73f2d03a2a626324de4c183552019fe |
|
MD5 | 801b538f03d239a44f85d99277b155f9 |
|
BLAKE2b-256 | 8622a892d11b9eaf4c3b0d4f2317452b1d62fe1c68c6c25d73186298096bafc0 |
Hashes for taichi-0.8.6-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62324691f79001f76b6d3bdba78bc863c0cd1b02f3f9572a2b8f4171f68c86af |
|
MD5 | b7297849720a1ca8dca29bcc590e4684 |
|
BLAKE2b-256 | 5e4ff21710ccc55b9add26bc7a5e86a0e530d3cfbf897d71fb86e64eeb3e7a8e |
Hashes for taichi-0.8.6-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5622d6e108db03cc937f75f662693a6e25a85b2d3081767ee76ea1de4c60795 |
|
MD5 | 5b6ceec40a7362a776b8ee4b2f59eccd |
|
BLAKE2b-256 | 50d2f8071fe3066c291601edf67fe950919945e53f566ed0b6a2e9e6e104f021 |
Hashes for taichi-0.8.6-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb453850b7c206fcedcb8ba1a70b05c11be39b140e56449362e190c4f390114d |
|
MD5 | 93618f04e0fd9b3ceaca5e6f28b069a2 |
|
BLAKE2b-256 | 70af7e2677db5086bff56be6e048882ace992fdd9c899b2e1213eeb8e86fc920 |
Hashes for taichi-0.8.6-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c931ca29e172a2279633115ac51b345b426bef81b11bcc4912f7f3dbbb77f036 |
|
MD5 | a8961fdc759ce103511059281c38b611 |
|
BLAKE2b-256 | 14c31fe99436adbe069facb1fc25d5bab88bc6d142b574d6bd7aad17069f851c |
Hashes for taichi-0.8.6-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2200d3d748e95659e4bee5fd06131f4a3d4849a099e3612b5cf2dbd1587b46d8 |
|
MD5 | 2b1b33bdd9542dd340fb14aa9aaf4c48 |
|
BLAKE2b-256 | 3b9530fd9e2fa6a0e605ba77a3fb95adbe0e6a097eea858afb50c3989caddb81 |
Hashes for taichi-0.8.6-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08f5dcbdacc29b74579f969a0f831d7a2105109bac0a3f0d73647ff7305d1ea9 |
|
MD5 | 59c8e3ab4376768e82df4a9a13379fbf |
|
BLAKE2b-256 | 49684b68dd28ad49b00ec2e41e3ed64dd8a045245aca453d6c19040fb2e8058a |
Hashes for taichi-0.8.6-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d4c5ff9a49120dc0a8883a991ae417d6971123a665cd36eaae3de5ecea45a727 |
|
MD5 | 1827d9d263cfd85850bb12c252ce52d0 |
|
BLAKE2b-256 | 12cf0f5b9c96b9b705ee378252831ab4f6235fa7329f3c1a3d507f0fa7a72f2c |
Hashes for taichi-0.8.6-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c06bfd01aef7ca769888d358eda4ea18b6d534fd8ef3258c62c152129b90d330 |
|
MD5 | cd787795c99d52b0245185443db53f23 |
|
BLAKE2b-256 | e3df9c2b7ff486bdaa0b6afb0dffe004048a2bd49124c027fb4a694bba684a12 |
Hashes for taichi-0.8.6-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae98d307bec7220b76ad669aa53c594aa6594e531b6d2389d8e7ea9d4cbf073c |
|
MD5 | 807ce4450d5169fecd0e16871a6cc436 |
|
BLAKE2b-256 | b2a7a4f09b3a394c80f2692fec32c98498a1d0edb638a9912f4d6e3faf8f8149 |
Hashes for taichi-0.8.6-cp36-cp36m-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0fac7379b8675249d54aa6fedcc452ae422f20c68775d5cd981d863166ba30e3 |
|
MD5 | 8e77d00b155039c16ca1ee779f19c884 |
|
BLAKE2b-256 | 3709ae31398e0341a22d9b3f3519ceb53e12acefe930808c5bd5e2a21dcef273 |
Hashes for taichi-0.8.6-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c029274200ff91ad55dc6772def5db02f2af724320e07e5c82ad7aacac8d3d3 |
|
MD5 | 4213ebf81214b69090ca48093335c427 |
|
BLAKE2b-256 | 466837414f2a43aea5eb238a41f06ebee92d40ec9dfd4b5f0bbbf57055860e5b |