[haiku-development] Re: Disabling CPU disabling

  • From: John Scipione <jscipione@xxxxxxxxx>
  • To: "haiku-development@xxxxxxxxxxxxx" <haiku-development@xxxxxxxxxxxxx>
  • Date: Thu, 24 Oct 2013 19:23:55 -0400

On Thu, Oct 24, 2013 at 7:11 PM, Pawel Dziepak <pdziepak@xxxxxxxxxxx> wrote:
> Since the scheduler code has grown quite big I am trying to remove as
> much unnecessary logic as possible. The thing that caught my attention
> is the possibility to disable a logical processor.
>
> As far as I understand there are two undocumented (i.e. BeBook doesn't
> mention them but some old apps, e.g. Pulse, use them) syscalls
> set_cpu_enabled and cpu_enabled that allow disabling/enabling a CPU
> and check whether CPU is enabled. I don't really see why anyone would
> like to use that. Definitely not for performance reasons. If because
> of the energy consumption then the new scheduler has power saving mode
> with small task packing which tries to keep as little CPUs running as
> possible.
>
> So, unless there is any situation it may be useful to manually disable
> CPU that I am missing, I am going to remove that feature (the menu in
> Deskbar for disabling CPUs could be replaced by menu for choosing the
> scheduler operating mode once public API for that is done).
> _kern_set_cpu_enable and _kern_cpu_enable have to stay tough (unless
> my assumption that they are part of the original BeOS ABI is wrong)
> but can be implemented totally in libroot returning respectively B_OK
> and true without even calling the kernel.
>
> Anyone going to miss that feature?

It's a neat feature allowing you to test the system under load by
dynamically turning a pocessors on and off to see the difference. I
would definitely miss the feature if it were removed.

Other related posts: