On Sat, Mar 21, 2009 at 8:38 AM, Janko Mivšek <janko.mivsek@eranova.si>wrote:
Philippe Marschall pravi:
Michael van der Gulik wrote:
So now it seems that Gemstone is the only multi-core capable Smalltalk VM :-(.
AFAIK Gemstone isn't multi-core capable as well. You can just run multiple gems and they share the same persistent memory. Which is similar but different.
Well, Gemstone can for sure be considered as multi-core capable. Every gem runs on its own process and therefore can run on its own CPU core. All gems then share a Shared Memory Cache. So, a typical multi-core scenario.
By multi-core, I mean that the following code would spread CPU usage over at least two cores of a CPU or computer for a while:
| sum1 sum2 | sum1 := 0. sum2 := 0. [ 1 to: 10000000 do: [ :i | sum1 := sum1 + 1 ] ] fork. [ 1 to: 10000000 do: [ :i | sum2 := sum2 + 1 ] ] fork. (I didn't try the above so there might be obvious bugs) If a VM can't distribute the load for the above over two or more CPU cores, I consider its multi-core capabilities a hack. No offense intended to the Hydra VM. I'm feeling a bit disheartened by the fact that there aren't any Smalltalk VMs, commercial or not, that can do fine-grained parallelism. Gulik. -- http://gulik.pbwiki.com/