[Pharo-project] [Vm-dev] idle VM runs at constant 3-5% CPU load

Eliot Miranda eliot.miranda at gmail.com
Mon Jun 4 19:27:34 EDT 2012

On Mon, Jun 4, 2012 at 12:56 PM, Igor Stasenko <siguctua at gmail.com> wrote:

> i just wonder, what takes so much CPU time, even if it completely idle...

The basic issue is the idle process that spins doing a yield instead of
blocking.  Basically, instead of ioRelinquishProcessorForMicroseconds the
VM should enter a blocking call that will terminate when the next delay or
i/o event occurs.  This requires rearchitecting delays because currently
the VM polls for delay expiry.  For the VM to block while a delay is active
there must be a delay callback/signal/interrupt etc that has the
side-effect of terminating the blocking call.

> 4831-  NBCog        4.8
> 51519- NBCog        3.5
> if i kill a UI process, the load goes down to 2.5-3 % ...
> still too much.
> i would like to know how we can minimize this.
> The reason why i concerned is straightly pragmatic: extending battery
> life..
> i found that if i run completely on battery.. it depleting quite fast
> with VM running (and i don't do anything just coding, i.e not running
> benchmarks, but more thinking and typing).
> --
> Best regards,
> Igor Stasenko.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20120604/ef3a87d3/attachment.html>

More information about the Pharo-dev mailing list