Pythoin MUD (PyMUD?)
Courageous
jkraska1 at san.rr.com
Sat Jun 23 13:32:51 EDT 2001
>http://www.stackless.com
>
>I might suggest you look at Microthreads. Once your digesting it all,
>keep in mind that the reason you can run so many threads in Stackless
>is that the context-switching cost is trivialized;...
Adding to my own post, I'd like to point out that I happen to have done
some serious performance analysis work on this subject; python-with-
continuations performs astonishingly well even when compared with
the "faster" languages such as C++, Java, and Lisp. Arguably, you
cannot even build a system in Java to handle 20-30,000 threads as
I did with Python. In C++, I used a cooperative multithreading environment,
and got similar performance to Python, probably because any advantages
the C++ offered were overwhelmed by Python's lack of context-switching
overhead. Because of my C++ implementations stackfullness, however,
I ran out of addressable memory at just under 32,000 threads. This
didn't happen in Python... the boundaries are available memory and
processing power.
FYI, there *is* an implementation of C with continuations on the net.
I never tried that in part because it's source-incompatible with the
standard libraries (as it has to be: all the compiled std libraries
expect a stack).
C//
More information about the Python-list
mailing list