Although built with USE=smp, `erl' doesn't run with the -smp parameter by default. Reproducible: Always Steps to Reproduce: 1. Install dev-lang/erlang with USE=smp 2. Start erl 3. Run 2+ processes that consume much cpu: loop() -> loop(). 4. Start top 5. See how beam consumes at most 100% cpu on a SMP system Actual Results: Erlang is about concurrency, multi-core systems become more widespread. Expected Results: beam should consume up to 100%*n cpu, where n is the number of CPUs installed When the ebuild is built with USE=smp, apply this patch: --- /usr/bin/erl.orig 2007-08-14 18:34:12.003297978 +0200 +++ /usr/bin/erl 2007-08-13 03:48:31.445665891 +0200 @@ -7,4 +7,4 @@ export ROOTDIR export BINDIR export PROGNAME -exec $BINDIR/erlexec ${1+"$@"} +exec $BINDIR/erlexec -smp ${1+"$@"}
Does upstream know about it? If not, please do us a favour and report it to them... If you have patches, please attach them to the bug. For this bug I did not use a patch but sed as it was easier.
Don't worry, I reported it myself, as I had some more issues to tell them.