colesbury / nogil

Multithreaded Python without the GIL
Other
2.91k stars 107 forks source link

[history] when I tried this in 1996 #8

Open gstein opened 3 years ago

gstein commented 3 years ago

Hey Sam! ... Good luck with this project. Looks great!

I removed the GIL back in 1996 from Python 1.4, primarily to create a re-entrant Python interpreter. We had embedded Python within IIS as the basis for Microsoft Merchant Server. in 2011, Dave Beazley provided a fantastic writeup/analysis of the patches that I developed. Please see it here: http://dabeaz.blogspot.com/2011/08/inside-look-at-gil-removal-patch-of.html

Guido referenced my project in 2007, with a blog post here: https://www.artima.com/weblogs/viewpost.jsp?thread=214235

Including a link to my short 2001 email about the performance that we observed.

My patchset was in use for only one, maybe two, product releases, so there was no impetus to maintain the patches or solve some of its problems.

The one thing that I'm most proud about, based those patches, is that Python grew the PyThreadState structure, and per-thread exception handling.

It looks like you're doing some great stuff, and I'll be following along. I don't think the above will be helpful for your project, but I do hope it will put a smile on your face, with its historical interest.

colesbury commented 3 years ago

Thanks, Greg! This is great. I had read Guido's blog post before, but I hadn't seen Dave Beazley's writeup and I had no idea about the integration of Python in IIS.