Skip to main content

What is Quadrants?

Quadrants is a high-performance multi-platform compiler for physics simulation being continuously developed by Genesis AI.

It is designed for large-scale physics simulation and robotics workloads. It compiles Python code into highly optimized parallel kernels that run on:

  • NVIDIA GPUs (CUDA)
  • Vulkan-compatible GPUs (SPIR-V)
  • Apple Metal GPUs
  • AMD GPUs (ROCm HIP)
  • x86 and ARM64 CPUs

The origin

The quadrants project was originally forked from Taichi in June 2025. As the original Taichi is no longer being maintained and the codebase evolved into a fully independent compiler with its own direction and long-term roadmap, we decided to give it a name that reflects both its roots and its new identity. The name Quadrants is inspired by the Chinese saying:

太极生两仪,两仪生四象

The Supreme Polarity (Taichi) gives rise to the Two Modes (Yin & Yang), which in turn give rise to the Four Forms (Quadrants).

Quadrants captures the idea of progression originated from taichi — built on the same foundation, evolving in its own direction while acknowledging its roots. This project is now fully independent and does not aim to maintain backward compatibility with upstream Taichi.

How Quadrants differs from upstream Taichi

While the repository still resembles upstream in structure, major changes include:

Platform support

  • LLVM 22, ARM (aarch64) support

CI

  • Kernel-level code coverage — device-side branch coverage in standard coverage.py format, integrated with pytest-cov
  • AI-driven checks for line wrapping, deleted comments, test coverage, and feature factorization

Structural improvements

  • dataclasses.dataclass structs — work with ndarrays and fields, nestable, passable to qd.func, zero kernel-runtime overhead
  • qd.Tensor — unified API over fields and ndarrays with per-tensor layout control, pickle support, and a backend= switch
  • BufferView — safe sub-range ndarray access with bounds checking in debug mode

Removed components

To focus the compiler and reduce maintenance burden, we removed: GUI/GGUI, C-API, AOT, DX11/DX12, iOS/Android, OpenGL/GLES, argpack, CLI.

Performance

  • Reduced launch latency — ndarray CPU performance improved 4.5×; ndarray GPU performance went from 11× slower than fields to ~30% slower (5090 GPU, Genesis benchmark)
  • Fastcache — opt-in source-level cache (@qd.kernel(fastcache=True)) that bypasses front-end AST parsing; reduces warm-cache kernel load from 7.2 s → 0.3 s on Genesis benchmarks
  • GPU Graphs - @qd.kernel(graph=True) captures kernel sequences into a graph; qd.graph.do_while runs GPU-side iteration loops (hardware conditional nodes on CUDA SM 9.0+)
  • perf_dispatch — auto-benchmarks multiple kernel implementations and selects the fastest at runtime
  • Zero-copy interopto_torch(copy=False) / to_numpy(copy=False) via DLPack on CUDA, CPU, AMDGPU, and Metal; direct torch tensor pass-through into kernels

SIMT primitives

  • Tile16x16 / Tile32x32 — register-resident 16×16 and 32×32 matrix tiles with Cholesky, triangular solve, and rank-1 updates; 5× faster than shared-memory baselines on blocked linear algebra
  • Subgroup ops — cross-platform shuffle, shuffle_down, reduce_add, reduce_all_add across CUDA, AMDGPU, Metal and Vulkan

Autodiff

  • Autodiff with dynamic loops — computes the gradient of any kernel transparently using reverse-mode differentiation and runtime-based memory allocation
  • Forward-mode AD, custom gradients (@qd.ad.grad_replaced), qd.ad.Tape

Debugging & development

  • Python backendqd.init(qd.python) interprets kernels as plain Python so they can be stepped through in a standard Python debugger

Installation

Prerequisites

  • Python 3.10-3.13
  • Mac OS 14, 15, Windows, or Ubuntu 22.04-24.04 or compatible
  • ROCm 5.2 or newer for AMD GPU support

Procedure

pip install quadrants

(For how to build from source, see our CI build scripts, e.g. linux build scripts )

Documentation

Something is broken!

Acknowledgements

Quadrants stands on the shoulders of the original Taichi project, built with care and vision by many contributors over the years. For the full list of contributors and credits, see the original Taichi repository.

We are grateful for that foundation.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

algan_quadrants-1.3.0.post2-cp313-cp313-win_amd64.whl (28.0 MB view details)

Uploaded CPython 3.13Windows x86-64

algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_35_aarch64.whl (29.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.35+ ARM64

algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_28_x86_64.whl (31.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

algan_quadrants-1.3.0.post2-cp313-cp313-macosx_13_0_arm64.whl (23.3 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

algan_quadrants-1.3.0.post2-cp312-cp312-win_amd64.whl (28.0 MB view details)

Uploaded CPython 3.12Windows x86-64

algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_35_aarch64.whl (29.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.35+ ARM64

algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_28_x86_64.whl (31.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

algan_quadrants-1.3.0.post2-cp312-cp312-macosx_13_0_arm64.whl (23.3 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

algan_quadrants-1.3.0.post2-cp311-cp311-win_amd64.whl (28.0 MB view details)

Uploaded CPython 3.11Windows x86-64

algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_35_aarch64.whl (29.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.35+ ARM64

algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_28_x86_64.whl (31.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

algan_quadrants-1.3.0.post2-cp311-cp311-macosx_13_0_arm64.whl (23.3 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

algan_quadrants-1.3.0.post2-cp310-cp310-win_amd64.whl (28.0 MB view details)

Uploaded CPython 3.10Windows x86-64

algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_35_aarch64.whl (29.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.35+ ARM64

algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_28_x86_64.whl (31.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

algan_quadrants-1.3.0.post2-cp310-cp310-macosx_13_0_arm64.whl (23.3 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

File details

Details for the file algan_quadrants-1.3.0.post2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 29544f8170c12f47558d97206f27e2023cea4727a890807eedb4938d10aa0237
MD5 4232700ee71d6da53409133b63e450a2
BLAKE2b-256 170d90582b9188c5eebe0bad3ac6e877e2051fcb4029958b1d77309f4ef62300

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp313-cp313-win_amd64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 ff69d32ac0f2c8a17d13757237801c6907ec046ef68ca85e5bd160662f3e12d9
MD5 df32abca6936aa5831b3e31f4695d22e
BLAKE2b-256 907d6e390c35dbe1cd4d504e95f6573660218c7aaf530db28335dbac4ba8bfa0

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_35_aarch64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 121df7c7fdb8448936cb3c913688022064cee4dd74d5b6604bce2c9466586ed4
MD5 3715ee96d31addeaf6bb8d699366f126
BLAKE2b-256 42291b3eb1e78bc6fa64cb35d49babfa390ab303ee2b2fa8675405a723b53046

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 85dd44efbec5cde096a3ad97157ed5c6c0d5c427fc4272044756e63cc01742a7
MD5 77cb9ed41085c08d035916a2c9a0da65
BLAKE2b-256 ac4b70c61dd923744f5366f73631bded15e4c2a39212a3b40ec1c68854d2c1ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp313-cp313-macosx_13_0_arm64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7a4d1d18ba024e4d4c491d8d280d1329494702b974cdba66c438d1fe35b393b9
MD5 262200d08fcc7d17bbbd6d8dacbc7c6b
BLAKE2b-256 cde3a03200e0929bf6732b022d5d8b601600c53653113c2618dbd5824f702ba8

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp312-cp312-win_amd64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 94dcfe1369c97c372e4f9cbe2505f4480687e20a101c2c3ab4771a187337019a
MD5 096a311f1dc58140375013a5f5a04d25
BLAKE2b-256 06f564ca35f85ac423a03c5bc372841ca08d82bc6fc70e342316683e123c415d

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_35_aarch64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5a9e66a882780e8ec692f15b6f2192309afb4e0d3bafd6d3a2a6954fc334c0ed
MD5 c54cf0a7ac0d562884f76e07d65fedd7
BLAKE2b-256 10e6beef6aac655165f592a92f61447b21bdbe2fa20751039343cc14ba657dab

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a15fc4c96fd469516ac7febc26ccfaefde0cb6ba9386b92e5cd47be0dcdb3591
MD5 abb236e3d2befe1d0a0e386b88001fc9
BLAKE2b-256 1e581a72dc079c900e62f912458de432a24985bbbf43f61b9288a695ae811b56

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ba392d5d7e4b5ce28c858a37e0716694ef9c15c7733a0c98b93cb13ccad5edce
MD5 656e892c67a43eda15986c83f363d8b3
BLAKE2b-256 574e4eb04d0485980f1d8ffe44df92f06f8cc6e54f35909a59948b36fa3e5fb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp311-cp311-win_amd64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 b835ff92cb1fc424ddd89640afd1a8c3075c774604f636e74eed2a421a2bdc59
MD5 4b290b1d1e5a747baaba5521c850c69f
BLAKE2b-256 dd3f3f299fe28650de4e42a21dbf23345072574994e5776fc506fa5524dd862a

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_35_aarch64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ab891d7fda22b27209eed701a467de0b96a03a4cc02b2555028f76950080de13
MD5 09833810dae38d4fb3b80c8b3526f2d0
BLAKE2b-256 f62b86ce26aa93edd497cc3a3c87910750f822009f75e451b520e3bf6fe42717

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 882b5484d9cce8ae6fce761becddbb8e7b3b849b51014cb67038a27bd50120a2
MD5 ad71123e0868d7c89de1241876fcab6e
BLAKE2b-256 f892a8b28c616d0559434c5165c4ec21d32f7415d9bdad7d4e284068831bfa4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 47a80d6d6e4a445aa231114e63d67219d03e634764ab79b9e807873f36453ef4
MD5 d0be8376bfab77628e7aca833b47e949
BLAKE2b-256 2deeee8e4252a5eee4b8b7e11a992f83ee5e5151797f0e200be68bdd5df97dcd

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp310-cp310-win_amd64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 9b0f8c3375381bb1543f0891cb1f85fe2ef6ea8edd837d499d2d482db9e50bc1
MD5 e5e03c930018366bcab23b2f5bc76e8d
BLAKE2b-256 c1cb188ec1dead2b791e7a34e8f06ac4cf8efdb08fd670a62a7c919bb73e50f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_35_aarch64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6cee0087d820fe7fcb445da837c36de543b08579d3c8adc66f25c2d1c2ea43a7
MD5 44a31bb75b42f5ea5946f2593ee9a4c0
BLAKE2b-256 2a9ab979fc3ddbd8082757555eecf373a91f27666b9cdcbd987b3973b6469294

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algan_quadrants-1.3.0.post2-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for algan_quadrants-1.3.0.post2-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 39adda4d436b639c3510b8880e7ccac5807a892f35ec738ca22d63b5161d259e
MD5 037f3e7aa90c5d8db973b69d7e3a75ce
BLAKE2b-256 f7734bc34d875b855b7675ea9a3a61546b6d304626a01605dbd5a8c7c7a6bd7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for algan_quadrants-1.3.0.post2-cp310-cp310-macosx_13_0_arm64.whl:

Publisher: quadrants_build.yaml on algorithmicsimplicity/algan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.3.0.post2 This release

16 files

1.3.0.post1

12 files

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