Squeak and SMP
Patrick Logan
patrickl at servio.gemstone.com
Fri Apr 24 18:07:00 UTC 1998
> Gemstone Smalltalk is single (OS) threaded. Multiple CPUs help
> Gemstone by allowing each process (all the gems, the stone, the
> distributed collector, the cache monitors) to run truly in
> parallel.
Really? The GemStone people we've been meeting with recently
clearly told us that each connected client to a GemStone server
has it's own VM, and it's own native processor thread. Why am I
hearing two completely different stories from GemStone on this
matter?
(We'll be right back to the regularly scheduled Squeak mail list...)
I don't think you are getting two different stories.
Each client *is* connected to its own Gemstone Smalltalk VM. That VM
uses one and only one OS thread. The VM supports Smalltalk-80 style
Process instances, with a few exceptions...
The VM was modified about 1.5 years ago to support CORBA via multiple
Process instances. The VM does not support timer interrupts or
asynchronous file I/O. It only supports asynchronous socket I/O,
because this was what was minimally needed to support CORBA.
On an SMP, I can run a VM and you can run a VM and they'll be truly
parallel. But within my VM, I cannot run multiple threads and have
them be truly parallel.
If you have any more questions about this, please send private e-mail.
--
Patrick Logan mailto:patrickl at gemstone.com
Voice 503-533-3365 Fax 503-629-8556
Gemstone Systems, Inc http://www.gemstone.com
More information about the Squeak-dev
mailing list
|