Erlang & Hyperthreading

Ryan Rawson <>
Mon Feb 27 04:59:09 CET 2006

Generally most hyperthreading seeks to make 1 CPU appear like 2
virtual CPUs.  From the OS level, you would show 2 CPUs in your system
stats.  The OS would then seek to schedule processes and threads on
both... this is where you might get interference, because with HT you
don't truly have 2 CPUs... you can end up with interference, which is
what I believe our system and DBAs found.  Turning off HT gave
performance improvement.

>From the Erlang side of things, it would be nice to have an Erlang
runtime available (for testing at least) that uses OS threads so we
can get the benefit of multiple CPUs.  Even my iMac has dual CPUs (as
dual core, the only thing they share is L2 cache).


On 2/26/06, Richard A. O'Keefe <> wrote:
> "Ryan Rawson" <> wrote:
>         You could expect up to 8 CPUs on commodity Intel hardware as well.
>         Generally hyperthreaded CPUs show up as multiple CPUs on Linux -
>         but be warned, I heard of performance improvements by turning off HT.
> Well, this is Solaris 10, not Linux, and it's UltraSPARC (presumably
> Ultra III), not Intel.  Perhaps someone else may have more accurate
> information; I think it's effectively 8 x (4-way hyperthreaded) CPUs,
> not 1 x (8-way hyperthreaded).   In any case, different horse from different
> stable, so maybe the results will be different.  Maybe _this_ horse will
> learn to sing?

More information about the erlang-questions mailing list