4 ms·
Actually, the good news is that Python 3 already has an improved GIL - it's much better than the 2.x version modulo one or two issues, and Unladen-Swallow's jit
by jnoller 16y ago
Actually, the good news is that Python 3 already has an improved GIL - it's much better than the 2.x version modulo one or two issues, and Unladen-Swallow's jit work is already well, well under way in the Python SVN tree. I'm hoping the latter will hit Python 3.2.
All told, removing the GIL without throwing all of the C extensions and other work people have done through the years onto a bonfire is really, really hard. We're getting incremental speed improvements, and if we're lucky, unladen-swallow will allow us to jump ahead performance wise very quickly.
As a side note; I agree with you - threads have their place, many of my apps make heavy, heavy use of python threads. I also use multiprocessing when I know it's CPU bound. You have to know which is the right tool, and when.
- andraz 16y agoDo not be fooled, right now Python 3 does _nothing_ to increase parallelism of two python codepaths being able to be executed at the same time. It just fixes some pathological cases where GIL behaved even worse than it should. Unladen doesn't try to fix GIL either and it is doubtful than it will be able to do so, PyPy has a greater chance of achieving that, but it's still not on the roadmap.