MOO-cows Mailing List Archive


MOO and SMP Machines

I'm just wondering if the moo server is capable of utilizing
multi-processor machines well.  From my knowledge of SMP OSes (which isn't
much I admit) a multi-processor OS doesn't split up a process to be run on
different CPUs, just hands out different processes to be run on different

The MOO server is I think 1 main process and two other processes, which
handle up name-lookup.  How would the MOO benifit from a multi-processor
machine if the bulk of the work is still done on one processor.  I can see
how it would speed up in a multi-processor machine because other processes
can be handled by the other CPUs but not the big one like the MOO.

I think it might be easy to make an SMP MOO server, after all the MOO
already uses processes internally.  I think you could get by with one main
process that handles the inbound network connections, task management and
checkpointing, and child processes that handle outbound network packets,
and the computational work that the task requires.  All the processes
would share the memory that the database is stored in.  The main process
would handle incoming packets, attach a task number and dump it into the
queue of the child processes.  The child processes would do the work of
the task and dump out the notify()s to the connected players.

Well I guess I've fallen from the question, is the moo server capable of
handing out the internal processes to different CPUs on an SMP machine?


Home | Subject Index | Thread Index