Do we really need const?

Jan Claeys usenet at janc.be
Mon Sep 24 12:52:29 PDT 2007


Op Sun, 23 Sep 2007 16:16:03 +1000
schreef Daniel Keep <daniel.keep.lists at gmail.com>:

> Jan Claeys wrote:
> > There are lots of (sometimes massively) parallel python applications
> > around; some of them were named in the recent discussions.  As an
> > example, the EVE Online servers & clients work as one large
> > distributed parallel application (there is one shared "state").
> 
> To be fair, that's parallelism via stackless which is just cooperative
> multithreading.  As far as I understand it, if you ignore the overhead
> of context switching and locks, code written against stackless and
> using Python threads will run at the same speed irrespective of how
> many hardware threads you have.  Neither one, AFAIK, can actually
> execute multiple threads of Python code simultaneously.

Not multiple threads of pure python code, but modules written in C++
(which I think they use at least in the client, and most likely also
server-side) can use multiple simultaneous threads.  And multiple
processes + IPC are no problem for pure python code.

> That said, stackless is still the bee's knees if you're on a
> uniprocessor machine.  The ability to have hundreds of thousands of
> super lightweight threads with almost no overhead, *and* the ability
> to just pickle a thread and re-start it on another machine?

They run it on a cluster of several multiprocessor machines, not even
counting the tens of thousands of PCs of their customers (the players
of the game) that have to share (part of) the state of the game.

<http://myeve.eve-online.com/devblog.asp?a=blog&bid=303> tells about
their early 2006 hardware (70 dual-cpu IBM LS20 Opteron blades :) ).

On 2007-09-03 they had more than 35000 people logged in into the same
game: <http://www.gamershell.com/news/41371.html>.


-- 
JanC



More information about the Digitalmars-d mailing list