cross-posted from: https://lemmy.ndlug.org/post/970135

GIL or Global Interpreter Lock can be disabled in Python version 3.13. This is currently experimental.

Python 3.13 brings major new features compared to Python 3.12 and one of them is free-threaded mode, which disables the Global Interpreter Lock, allowing threads to run more concurrently.

The GIL will be disabled when you configure the Python with the --disable-gil option which is nothing but a build configuration (free threading build) at the time of installation.

This will allow optionally enabling and disabling GIL using the environment variable PYTHON_GIL which can be set to 1 and 0 respectively.

It will also provide a command-line option -X gil which can also be set to 0 (disable) and 1 (enable).

  • atzanteol
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    4
    ·
    3 months ago

    Python performance sucks - use C if it matters.

    FTFY

    • mox@lemmy.sdf.org
      link
      fedilink
      arrow-up
      5
      ·
      3 months ago

      C is one option for writing compiled modules, but certainly not the only one.

      More importantly, writing a moderate-sized program entirely in C when only a small fraction of it needs high-performance custom behavior is likely a poor use of time, both immediately and throughout the code’s life.