Skip to main content

Download compute kernels

Project description

kernels

The Kernel Hub allows Python libraries and applications to load compute kernels directly from the Hub. To support this kind of dynamic loading, Hub kernels differ from traditional Python kernel packages in that they are made to be:

  • Portable: a kernel can be loaded from paths outside PYTHONPATH.
  • Unique: multiple versions of the same kernel can be loaded in the same Python process.
  • Compatible: kernels must support all recent versions of Python and the different PyTorch build configurations (various CUDA versions and C++ ABIs). Furthermore, older C library versions must be supported.

The kernels Python package is used to load kernels from the Hub.

🚀 Quick Start

Install the kernels package with pip (requires torch>=2.5 and CUDA):

pip install kernels

Here is how you would use the activation kernels from the Hugging Face Hub:

import torch

from kernels import get_kernel

# Download optimized kernels from the Hugging Face hub
activation = get_kernel("kernels-community/activation", version=1)

# Random tensor
x = torch.randn((10, 10), dtype=torch.float16, device="cuda")

# Run the kernel
y = torch.empty_like(x)
activation.gelu_fast(y, x)

print(y)

You can search for kernels on the Hub.

📚 Documentation

Read the documentation of kernels.

Test coverage

To reproduce the coverage number reported on PRs locally:

uv run pytest --cov=kernels --cov-report=term-missing tests

CI measures coverage on a single canonical matrix cell (Python 3.10 / Torch 2.12.0) and posts a sticky comment on the PR; the threshold is 80% (warn-only — the check stays green either way).

Project details


Download files

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

Source Distribution

kernels-0.15.2.tar.gz (65.1 kB view details)

Uploaded Source

Built Distribution

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

kernels-0.15.2-py3-none-any.whl (58.7 kB view details)

Uploaded Python 3

File details

Details for the file kernels-0.15.2.tar.gz.

File metadata

  • Download URL: kernels-0.15.2.tar.gz
  • Upload date:
  • Size: 65.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kernels-0.15.2.tar.gz
Algorithm Hash digest
SHA256 5af4fab4a2d4eb67f01522dffabfdc3a4bcfc167ce68f7549c0d2828a73cbc19
MD5 469b628ce68e1fc633c3675b21c7b471
BLAKE2b-256 85b432f2aaf2e6d6b89477ecaf27b7e3aa22edfa9ccd98c705fb0a9b69773cab

See more details on using hashes here.

Provenance

The following attestation bundles were made for kernels-0.15.2.tar.gz:

Publisher: publish_kernels.yml on huggingface/kernels

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

File details

Details for the file kernels-0.15.2-py3-none-any.whl.

File metadata

  • Download URL: kernels-0.15.2-py3-none-any.whl
  • Upload date:
  • Size: 58.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kernels-0.15.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2a66497d94152896b74c841089e3ee685708b8ddc21d4f4751a0505a0b693c91
MD5 1197f0d4471a088c62e041e435f1d513
BLAKE2b-256 a19d1fc63a78fec897de35bc822dfd388985804a72040c75db811bf67dd9b8fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for kernels-0.15.2-py3-none-any.whl:

Publisher: publish_kernels.yml on huggingface/kernels

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page