Wanted: Experienced C-programmer to become a Python legend #358
Sophist-UK
started this conversation in
General
Replies: 1 comment
-
UPDATE The one volunteer we had has unfortunately found that he does not have the time for attempting even the same experiment as a decade ago. So PLEASE, is there anyone willing to volunteer? |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
For well over a decade there have been questions about how the GIL is passed between threads, the existing implementation having severe side-effects if there are one or more CPU-heavy threads.
There is a detailed discussion about Multithreading Performance in which several issues are demonstrated again in a benchmark. I have proposed a simple GIL scheduler (based on well established computer science principles), however in the end it comes down to finding someone who has the skills (which I don't) to experiment and create a proof-of-concept solution on a scientific step-by-step basis - taking consistent measurements at each step.
Over a decade ago, someone tried to shoehorn a Linux scheduler into the GIL and it wasn't suitable - and whilst we do have a volunteer who has offered to repeat this exact same experiment, IMO we need someone who has the time and the skills and is willing to work on this in a more structured way.
We know there is a problem that should be able to be solved. I have proposed a design that is not too complex, but a good discussion might come up with a better one.
Is there anyone reading this who would like to take this on? I cannot promise that it will definitely result in a better GIL and substantial performance improvements for multithreaded apps, but I do believe that this is a fairly likely outcome - and if so then you will be a Python hero / legend, at least in my eyes.
So, any takers?
(I am not a C programmer, and so entirely unqualified to estimate the effort required, however my gut reaction is that a prototype proof-of-concept might not be too much effort (measured in days rather than minutes or months), but if it works then ironing out backward compatibility issues and supporting a more comprehensive beta test programme might be quite a bit more effort. If anyone would like to discuss my outline design in detail so that they can make their own estimate of effort for the prototype, I would be happy to help with that.)
Beta Was this translation helpful? Give feedback.
All reactions