Skip to main content

tack-core

Kernels, arrays, types, IR, codegen and backends for Tack — a Python-first GPU compute framework.

Write compute kernels as decorated Python functions; they are JIT-compiled at first call (and kept in a disk cache, so a later process loads them instead) and dispatched to whichever backend is active. The same kernel source runs on five backends, within each backend's capabilities (for example, Metal has no f64 and the CPU has no workgroup primitives).

import tack, numpy as np
tack.set_default_device("cpu")          # or metal, cuda, hip, level_zero

@tack.kernel
def vector_add(x, y, out):
    for i in range(x.shape[0]):   # outermost loop → thread parallelism
        out[i] = x[i] + y[i]

x = tack.empty((1024,))       # f32 unless a dtype is given
y = tack.empty((1024,))
out = tack.empty((1024,))
tack.copyto(x, np.arange(1024, dtype=np.float32))
tack.copyto(y, np.ones(1024, dtype=np.float32))

vector_add(x, y, out)
print(out.numpy())

Install

Pick the extras for your hardware. Keep cpu beside a GPU's extra: without it the CPU, the default device, cannot run kernels.

pip install "tack-core[cpu]"           # LLVM JIT via llvmlite
pip install "tack-core[cpu,metal]"     # Apple silicon
pip install "tack-core[cpu,cuda]"      # NVIDIA
pip install "tack-core[cpu,hip]"       # AMD, with ROCm (hip-python: Linux x86-64)
pip install "tack-core[cpu]"           # Intel: Level Zero is the system's runtime, no extra

Python 3.11 or newer. Tack is pure Python and compiles kernels when they are first called.

Backends

Backend Codegen Runtime compilation
CPU LLVM IR llvmlite JIT
Metal MSL Metal API
CUDA CUDA C NVRTC → PTX
HIP HIP C hipRTC
Level Zero OpenCL C libocloc → SPIR-V
  • tack-vis: tack.dataset, with meshes, fields and visualization algorithms, and the VTK and MFEM interop. It is not on PyPI; install it from the repository, at the tag of the tack-core release you have, for example:

    pip install "tack-vis @ git+https://github.com/Kitware/tack@v0.7.0#subdirectory=packages/tack-vis"
    

Full documentation, examples and the kernel-language reference are in the repository.

BSD 3-Clause licensed.

Metadata

Release files for tack-core 0.7.0

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

Source distribution (sdist)

Source distribution for tack-core 0.7.0
File Size Uploaded Provenance Actions
tack_core-0.7.0.tar.gz 737.7 kB With provenance Details for tack_core-0.7.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tack-core 0.7.0
File Interpreter ABI Platform Actions
tack_core-0.7.0-py3-none-any.whl Python 3 none any Details for tack_core-0.7.0-py3-none-any.whl

Total release size: 1.2 MB

Release files / tack_core-0.7.0.tar.gz

Download URL tack_core-0.7.0.tar.gz
Size 737.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a4b27133682bd5a9015742b7f8650abfa50d848307fa29c6d3dcc4adcccb57c5
BLAKE2b-256 checksum
How to use checksums
708ba64862a979cabd385c88b352cd7f4bc8ac64abec58309a9203abb5170118
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Release files / tack_core-0.7.0-py3-none-any.whl

Download URL tack_core-0.7.0-py3-none-any.whl
Size 441.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d3b73a87396c9522d768e9c983d8b6ce127394738309f759e45a1e8140302574
BLAKE2b-256 checksum
How to use checksums
e34e66723c7c610f72fde53a37d0dc7f635da4d79cde5ad7b0eeff66795b217a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Security for tack-core 0.7.0

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.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for tack_core-0.7.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.7.0 This release

2 release files Full 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