[erlang-questions] VM not able to use available cores
Matthias Lang
matthias@REDACTED
Sun Jan 20 09:16:08 CET 2008
Hi,
You're measuring the performance of processes which do no useful work
and which all communicate a lot with everything else.
Such a set up makes it likely a lock somewhere will dominate. Perhaps
there's a lock on each process' message queue and the CPUs spend most
of their time fighting over those N locks. If so, then partitioning
the problem can be expected to completely change the results.
Micro benchmarks such as this one tend to spawn thickets of
clueless long-winded speculation. I've tried to keep mine short.
Matt
----------------------------------------------------------------------
Paul Brown writes:
>
> EQ --
>
> On a somewhat random lark, I decided to fire up the "big.erl"
> exerciser on a new box (8 cores, Xeon, Mac OS 10.5, R12B) that
> replaced an old box (4 cores, PPC G5, Mac OS 10.4, R11B), and the
> initial returns were surprising -- the 8-core box exhibited more or
> less equivalent performance to the 4-core... (Pretty graphs, links to
> big.erl source I used, etc., are here - http://mult.ifario.us/p/use-the-cores-erl
>
> A little more digging, and it turned out that the VM was only able to
> use the equivalent of 3 cores worth of CPU cycles, no matter how many
> schedulers I ran from the command line. Two VMs does a reasonable job
> of using all 8 cores worth of cycles, but I'm left with the question
> of why a single VM couldn't use more cores.
>
> Any thoughts?
>
> -- Paul
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://www.erlang.org/mailman/listinfo/erlang-questions
>
More information about the erlang-questions
mailing list