On 10/22/07, Igor Stasenko siguctua@gmail.com wrote:
but this leads to burden our parallel processes with scheduling. I would like, instead, to be able to run a number of parallel branches for same process (to schedule a process instead each of these branches).
Scheduling doesn't have to be a problem if done e.g. event driven [1]. This is one of the optimizations I planned to have as advantage over the Erlang implementation.
[1] In an event driven scheduler you look at what the process the process did, and demote or promote them in priority based on this. You end up just touching two processes per switch, but processes that quickly give up the CPU (e.g. a process that just sends messages to have work done) get the CPU any time they want it.