Since last weeks tempest in a blogpot, and my subsequent post "Have GIL: Want Benchmarks" I've been doing a lot of reading, planning and discussion with people. What this has culminated in is a google-code project I started late last week, tapping Daniel Watkins and picking the brains of others to start pulling together information about the entire threaded/concurrency domain.
The google-code project is named "python-distributed" and right now, has Daniel Watkins initial work, plus a bunch of wiki pages with my research in it. It is not exhaustive by any means - I've only just started taking half-baked blog posts, notes scattered all over my hard drive and code that I've got an trying to organize it into something.
I know people want "numbers". I know people want hard, fast and decisive numbers - that's what benchmarks are, right? More frequently, benchmarks are a lightning rod of controversy. Some will yell fowl, others will trumpet them as the greatest thing since "Good Night Moon" (truly, a god send). The only good benchmark is the one without an ulterior motive, and with the information out in the open so that everyone can run it.
I like to think of "numbers" being a non-goal for this project - personally, I want to explore all of the concurrency-like and true concurrency/threading/etc packages out there for python with a simple set of baseline tests. The eventual goal is to find one (or build one) that will make it into the python-lib the library must be easy to use, safe, and pythonic.
I've spoken to many people and my goal is to generate a lot of tests - my primary background is in test engineering (automation) - so laying out what code tests we want, what packaged we want to test and how we want to test them is primary in my mind. I mean, just the chance to visit all of these packages and ideas and hack up some code, delicious, delicious code.
So, with that all said: I'm sure people want to contribute, review, etc. With any luck I'll be able to start pushing in real code shortly, and Daniel has already pushed in his initial test code to his sandbox.