AW: [erlang-questions] Serious problems with some operations on the ARM platfor.

Robert Virding <>
Fri Jan 21 12:04:07 CET 2011

----- "Nils Decker" <> wrote:

> Hello,
> ...
> One thing i found, is that a single process can completely block a
> (non-smp) emulator by building large bignums.
>   loop(N)  ->
>     _ = N div 3, % some work needed on my desktop but not needed on
> arm.
>     loop(N bsl 8).
> The reason is, that one bignum operation consumes just one reduction
> by the scheduler, but the work done is depends on the size of the
> bignum. Maybe the size (in bytes) of the bignum should be used for the
> number reductions consumed by bignum operations?

This would be a good modification for all BIFs and internal operations irrespective of SMP or no-SMP, though I believe that it is already done in many places.


Robert Virding, Erlang Solutions Ltd.

More information about the erlang-questions mailing list