Python simplicity, native performance.
A high-performance Python implementation that compiles to native machine code, with native multithreading and seamless Python interoperability.
Write familiar Python, then compile and run it with Codon.
Codon reads Python code and organizes it into a form the compiler can analyze.
Static type checking and inference enable native code generation, without requiring type annotations.
A rich intermediate representation supports compiler analyses, transformations, and optimizations.
General-purpose, Python-specific, and domain-specific optimizations turn high-level code into efficient native programs.
LLVM lowers the optimized program to native machine code for your target hardware.
GET STARTED
Build your first native program.
Keep the Python syntax you know. Compile to native machine code, run across cores, and connect to the Python ecosystem.
PUT CODON TO WORK
What will you build with Codon?
Build standalone applications, explore parallel computing, or bring native code into your Python projects.
Compile, don't rewrite.
Turn compute-heavy Python into native executables for servers and edge devices, without moving to another language.
Compile your first programPut every core to work.
Spread independent work across CPU cores with native multithreading. No global interpreter lock holding it back.
Explore multithreadingTake Python to the GPU.
Write GPU kernels in Python and bring massively parallel hardware to your data-intensive computations.
Write a GPU kernelGet more from NumPy.
Keep familiar array operations. Let the compiler fuse expressions and optimize the numerical work underneath.
Meet Codon's NumPyStart with the bottleneck.
JIT-compile performance-sensitive functions inside an existing Python project. Keep the rest of your application in place.
Add Codon to PythonBuild a faster Python module.
Package native code as a Python extension that other projects can import. No C or Cython required.
Create an extensionCODON LABS
Go from reading to building.
Work through hands-on projects and explore what native Python can do.
Familiar Python. A different runtime.
Codon stays close to Python's syntax and semantics, but it is not a drop-in replacement for CPython. Some dynamic behavior and library interfaces differ. Python interoperability lets you keep using Python libraries alongside native code.
Read the compatibility guide