tasks such as compression or hashing. Also, the GIL is always released
when doing I/O.
- Past efforts to create a "free-threaded" interpreter (one which locks
- shared data at a much finer granularity) have not been successful
- because performance suffered in the common single-processor case. It
- is believed that overcoming this performance issue would make the
- implementation much more complicated and therefore costlier to maintain.
-
+ As of Python 3.13, the GIL can be disabled using the :option:`--disable-gil`
+ build configuration. After building Python with this option, code must be
+ run with :option:`-X gil 0 <-X>` or after setting the :envvar:`PYTHON_GIL=0 <PYTHON_GIL>`
+ environment variable. This feature enables improved performance for
+ multi-threaded applications and makes it easier to use multi-core CPUs
+ efficiently. For more details, see :pep:`703`.
hash-based pyc
A bytecode cache file that uses the hash rather than the last-modified