Skip to main content

Extension aimed at improving the performance of the Python runtime

Project description

CinderX

PyPI - Version

The CinderX logo, which is a lowercase "cinderx" with the dot in the i as a small flame, and a stylized orange x

CinderX is a Python extension that improves the performance of the Python runtime.

Status

CinderX is under active development. It is used in production at Meta for use-cases like the Instagram Django service. It is experimental for external users. New releases are published to PyPI on a weekly basis.

Features

  • JIT Compiler - Just-in-time compilation of Python bytecode to native machine code
  • Static Python - A stricter form/subset of Python, for type safety and optimization

The codebase includes other features as well, such as a parallel garbage collector and a lighter weight implementation of Python interpreter frames. However these features are not compatible with the stock CPython runtime yet.

Requirements

  • Python 3.14
  • GCC 13+ or Clang 18+
Linux macOS Windows
x86-64 :white_check_mark: :x: :white_check_mark:
aarch64 :white_check_mark: :white_check_mark: :x:

Installation

pip install cinderx

Using the JIT

The recommended way to start using the JIT is to do:

import cinderx.jit

cinderx.jit.auto()

This will configure the CinderX extension to automatically compile Python functions to machine code. It will track what functions are called frequently and compile the hottest ones automatically.

See the JIT documentation for more details, or browse the full CinderX documentation site.

CinderX vs Cinder

Cinder was a fork of the CPython runtime developed at Meta. It included runtime optimizations (e.g. JIT) and was specifically targeted at the Instagram Django codebase. For Python 3.10, Meta decided to turn it into a Python extension to improve compatibility with newer Python versions. This extension is now known as CinderX ("the X" is for "extension").

Historically, for Python versions 3.10 through 3.12, CinderX depended on patches to Meta's fork of the Python runtime. Python 3.14 is the first version of stock CPython that CinderX supports.

License

CinderX is MIT licensed, see the LICENSE file.

Terms of Use

https://opensource.fb.com/legal/terms

Privacy Policy

https://opensource.fb.com/legal/privacy


Copyright © 2025 Meta Platforms, Inc.

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

cinderx-2026.7.6.0.tar.gz (2.7 MB view details)

Uploaded Source

Built Distributions

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

cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (31.9 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (31.8 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

cinderx-2026.7.6.0-cp314-cp314-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.14Windows x86-64

cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_x86_64.whl (31.3 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_aarch64.whl (31.1 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (30.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (30.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

cinderx-2026.7.6.0-cp314-cp314-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

File details

Details for the file cinderx-2026.7.6.0.tar.gz.

File metadata

  • Download URL: cinderx-2026.7.6.0.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cinderx-2026.7.6.0.tar.gz
Algorithm Hash digest
SHA256 44e9bee2ca33454d5f9c028932eba168e8cfaf69e29dbfc83955e7db7146785c
MD5 1a8b4287e4e801fbf55dcd61eb89e867
BLAKE2b-256 3168d3833a5c4cfcdddbb09fa79e02d5224a4648767076d16a229010ee6bd992

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0.tar.gz:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c4f1ef7bbeeb73f53b7fd0e7ca3494690dea6a0969311eeca98e0c94521662c2
MD5 ad89488f5f103fb479f2c6a6429aa62a
BLAKE2b-256 55265b3bce1bc7d1715128b44c05a9d3d4f96dac548c791ffd93fb70f64cff1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 511702cbe91f77485a0db6d97ff52c635acb4d32dfd2c29473ff20d40deab9e7
MD5 04152a09bb132c7e1664932882d4ce3d
BLAKE2b-256 b0daf20b49d743d9b705d47fe959dcec5b5854cca75697dc8dcb3ea9a4fad8ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 3fd118997e9385608399056b03be6a672e649a4b25faa0ca446247743b51bd8d
MD5 d8c8fa577a072e3b6fe0411333b6c6db
BLAKE2b-256 ace6c5b73344a40cdd50ff9e2a093406b8bfdaca15c9db3ad66bc5378a55840a

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314-win_amd64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ff4ed2dacce5d3828388ac20a0d8b0b1ae2b7cb53dc6408193ff5a0c9b892b24
MD5 26ec9e43674ba4e3ffb382dc2d4a3ae5
BLAKE2b-256 09fef463b3f9a6ece3b990c752915d93165ccae5b10986dfb13fe618ae228c2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 58a2982f1d746b4c75d2cbe02e043ce6f831e8f26ba3851e7adccad06e97b2a2
MD5 892c19b23a3c0c214a9737a59f835d25
BLAKE2b-256 02427ae97b17ccb5d56db1751737ffa715bc278cb2cbc126fed6b4d2eed2a90b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 771d76b595fe1008f99ad5904f334df3a07f279371c22488466a3f07f107e038
MD5 d6ee7bf42d7088a98deb794f2111f65a
BLAKE2b-256 cfb7221fd8ec983f81decf5808fc490158718a30ad9ea3790e655d98166016d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 41a039dcf208a3fcbd675b1ed400644066e2248f871101f19521fc6ad1a4381e
MD5 333b2483d9f2fe04db0369da05a80bf0
BLAKE2b-256 62fd0e1b5d881a5beb86dfc119cfd007099d2813b251a2d3d8a703214f746013

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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

File details

Details for the file cinderx-2026.7.6.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cinderx-2026.7.6.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d4b4c5faab1621ed4d3c131392604990306db571287d0a176916e62f546841f1
MD5 8e1f78095a9fbdc5eb887d031ac39493
BLAKE2b-256 a77935ca6f929b4203ee18ef5037be0b40d493361d89c9cf3d35b2e29efcb0ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.7.6.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: publish.yml on facebookincubator/cinderx

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