[META-SIG] Proposal for new SIG: Thread SIG
Guido van Rossum
guido@CNRI.Reston.Va.US
Sun, 20 Jul 1997 10:33:17 -0400
[Repost with typo fixed in subject -- please ignore the previous one!]
In response to thread discussion on c.l.p, there were some voices to
create a Special Interest Group on Threading. I volunteered to write
a draft SIG manifesto for it, and Greg Stein has volunteered to become
the SIG champion. (Now that he's dropping the db-sig; has anybody
volunteered to keep it alive? If not, I propose to shut it down,
keeping the archives of course).
If there's no discussion based on this proposal, I take it that
there's no need for a Thread-SIG -- so please comment!
--Guido
========================================================================
Subject: Thread-SIG -- Mission Statement (DRAFT)
The Thread SIG strives to improve the status of threading in Python.
It has specific goals and deliverables. The SIG will be shut down
(after discussion) when these have been reached and produced,
respectively.
The (lofty) SIG goals are:
- The Python threading interface should be sufficiently powerful that
its users can concentrate on using threads rather than writing
threading tools.
- There should be sufficient documentation for the Python threading
interface.
- Python should support threading well on every platform where the
native OS has decent threading support; if possible, this support
should be automatic (e.g. automatically detected by the configure
script rather than specified as a command line option to it). In
particular, good thread support should exist on Windows 95 and NT,
and on all Unix systems for which a vendor-supported pthread
implementation exists.
- There should be some kind of answer to the problems caused by
Python's central interpreter lock -- if not permanent removal of the
lock (which seems problematic without significant performance loss),
then at least some other way that makes it possible to run multiple
threads comfortably on a single-processor machine -- perhaps BEGIN/END
thread macros everwhere, perhaps a compile time switch to enable
something like Greg Stein's "free threading" patches, perhaps
something else.
- Some kind of threading that's suitable for multiprocessor
machines???
The SIG deliverables will be determined by the SIG. They will include
at least:
- A "Threading in Python" document that describes HOWTOs, gotchas,
available packages/patches, etc. This would address the continual
"how do I use threads in Python?" questions.
- A design for higher level threading functionality to be added to
standard Python (perhaps an extended thread module, perhaps some
additional Python modules, perhaps a new "pthread" module more closely
modelled after Posix threads, perhaps all three).
- A documented implementation of the above design.
- Patches to standard Python that reduce the problems with the
interpreter lock, perhaps modelled after Greg Stein's patches.
While the thread-sig exists, other thread related discussions are
welcome, however these should not be confused with the SIG's goals.
========================================================================
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________
META-SIG - SIG on Python.Org SIGs and Mailing Lists
send messages to: meta-sig@python.org
administrivia to: meta-sig-request@python.org
_______________