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 README for more details.

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.6.29.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.6.29.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (31.8 MB view details)

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

cinderx-2026.6.29.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (31.7 MB view details)

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

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

Uploaded CPython 3.14Windows x86-64

cinderx-2026.6.29.0-cp314-cp314-musllinux_1_2_x86_64.whl (31.1 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

cinderx-2026.6.29.0-cp314-cp314-musllinux_1_2_aarch64.whl (30.9 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

cinderx-2026.6.29.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (30.7 MB view details)

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

cinderx-2026.6.29.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (30.6 MB view details)

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

cinderx-2026.6.29.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.6.29.0.tar.gz.

File metadata

  • Download URL: cinderx-2026.6.29.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.6.29.0.tar.gz
Algorithm Hash digest
SHA256 28a336f0515f3705e7f5ff96950e086dfb32697114eedf2f8f78a96b0b24e784
MD5 1937369d20046e26e7578e08df8119ec
BLAKE2b-256 f0b09d665011e96b374de654be52b90ac5feb8742566e261acfb50cb44ed5d95

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 973679e6df6d28b88165db31f7969a226894925f3f122c3fdf0f6d04a9bf9277
MD5 e02bc9b4cbfefe4536e0661efd53c6c9
BLAKE2b-256 64ff73566946fb96a9395df3d895878ec500afec2ea8b7b21e3b89c286d0801b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fd7d335a799fa57518370608e9ea1bcf8969b433f1bb5fd07295dbc3f45d4d09
MD5 937f909f675ecf639a818cbc336b30d4
BLAKE2b-256 60d504ec7c9d67fdbd796346cce55e97ee1a6fd941e35e3bcf9015f61515dc48

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 363ecde4fd8fb038d632076a7dd1dd86e52758783fc8580f1682fb0b6a6dc113
MD5 9ee40be9cf318a0e629110fdb1a8459e
BLAKE2b-256 19a991a0bc8ac8289614508b86e580d4fb870286dbc7b35c9fe514985a3cb699

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0c17b500231e25d087ac0028c51162eb9cdb0a10b618840fe31c660d0c6b4714
MD5 65df686d5594f33af0f5e2d1ff725550
BLAKE2b-256 77a08cf8834e27d4ac6fea253b4878afbcea2e94fe39f03315337d76c8078d92

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 261489d96e5e74195a5841fa57c4293c50510bf8af99cc7c24af663d29c47cda
MD5 04a8e1c82b7d19d9111ebde23186e248
BLAKE2b-256 7e41ded3c9e385e58d774b50c6b9c4d4defdbdc6426c85daf8cc3799149cacb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1e9bde3807347880d8026a027fb75dbec27e13780800cf796826a420efd3102a
MD5 761be86396fb2fb37240fdce202b1423
BLAKE2b-256 d2c76aeb9adc0445a35de2c02181205ea8dd34df8759f7f1f57fc805919b8a5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f7d985b3c5da9157cceef31ec13286b63536c3d377e2da9ca1776e2fac41977e
MD5 9a4890591f8966f4056488a4ff95b73d
BLAKE2b-256 1dc05bfd221e2de20801aad002dafd776aaafba5d9e2bd932a647da07b5cfedf

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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.6.29.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cinderx-2026.6.29.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 04cc2e1a2eb69d52868ad9e8d17a0a9e69958a3cd166e04aeceb60b0d11fcf80
MD5 2e86b7b00d5c0bb1989e190beb4920bb
BLAKE2b-256 5dcb0eef9084e9c7b240a44fedb3dd2bdb23797617fa1ea3e3c69630c4658f9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cinderx-2026.6.29.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