colesbury/nogil

Multithreaded Python without the GIL

2,909

stars

100,022

commits

Python

primary language

May 20, 2025

updated

README

Python Multithreading without GIL

Copyright (c) 2001-2022 Python Software Foundation. All rights reserved.

See Doc/license.rst for copyright and license information.

Overview

This was a proof-of-concept implementation of CPython that supports multithreading without the global interpreter lock (GIL). An overview of the design is described in the Python Multithreading without GIL Google doc.

Now that "PEP 703 – Making the Global Interpreter Lock Optional in CPython" has been accepted, this project is not being actively worked on. Development is focused on making Python 3.13 and later releases support running without the global interpreter lock in a configuration called "free-threading".

Please use the "free-threaded" build of Python 3.13. For installation instructions, see https://py-free-threading.github.io/installing-cpython/.

Contributors

(top 30 of 353)

gvanrossum

11,074 commits

benjaminp

5,844 commits

birkenfeld

5,677 commits

freddrake

5,465 commits

colesbury/nogil

Multithreaded Python without the GIL

2,909

stars

100,022

commits

Python

primary language

May 20, 2025

updated

README

Python Multithreading without GIL

Copyright (c) 2001-2022 Python Software Foundation. All rights reserved.

See Doc/license.rst for copyright and license information.

Overview

This was a proof-of-concept implementation of CPython that supports multithreading without the global interpreter lock (GIL). An overview of the design is described in the Python Multithreading without GIL Google doc.

Now that "PEP 703 – Making the Global Interpreter Lock Optional in CPython" has been accepted, this project is not being actively worked on. Development is focused on making Python 3.13 and later releases support running without the global interpreter lock in a configuration called "free-threading".

Please use the "free-threaded" build of Python 3.13. For installation instructions, see https://py-free-threading.github.io/installing-cpython/.

Contributors

(top 30 of 353)

gvanrossum

11,074 commits

benjaminp

5,844 commits

birkenfeld

5,677 commits

freddrake

5,465 commits

Languages

Python

61.8%

C

35.9%