[Stackless] Is Stackless single core by nature
andrewfr_ice at yahoo.com
Sat Jul 11 21:18:35 CEST 2009
Date: Thu, 9 Jul 2009 22:09:57 -0700
From: Bob Ippolito <bob at redivi.com>
To: Henning Diedrich <hd at authentic-internet.de>
Cc: Richard Tew <richard.m.tew at gmail.com>, stackless at stackless.com
Subject: Re: [Stackless] Is Stackless single core by nature?
<6a36e7290907092209m5393ff4aw425e2a810e1a25fe at mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
>I still use Python every day for lots of things, but all of our high
>concurrency/performance stuff has been written in Erlang since about
>the time of that thread, so we have a few years of experience with it.
>We build primarily a lot of the sorts of systems that you'd build in a
>game (Mochi is a platform for Flash gaming). If I were writing
>something massive and game-like I'd probably write the part that talks
>to clients and does bookkeeping in Erlang, and have it speak
>bidirectionally over JSON or something to pools of Python or
>think many people would enjoy coding lots of game logic in Erlang.
I just started reading the Joe Armstrong Erlang book and trying the examples....
You are probably right about the typical programmer not wanting to use Erlang for game logic. However I thought the main advantage of Erlang would be one could use its multi-processing support to help with compute bound tasks (i.e, parts of the game logic). That said, I don't see why Erlang should be vastly or intrinsically better performing than Stackless Python (with the right networking library) at low level networking and concurrency.
Again, I am still learning Erlang. And I haven't looked much at multi-core processing (I am more interested hot swapping). But I am under the impression that Erlang dedicates a scheduler per core/thread and has a
dispatcher mechanism that makes this transparent to the processes. If this is the case, which couldn't Stackless Python adopt a similar approach, keeping in mind, fundamental differences between the languages and the message passing systems?
More information about the Stackless