Author Topic: Stopping CPUs  (Read 5685 times)

Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1428
  • Karma: +28/-0
    • View Profile
Re: stopping cpus
« Reply #15 on: February 28, 2025, 04:51:02 pm »
Hi Doug!

...
3- Dave/Darius - I am afraid to turn off power management after reading the warnings in the ACPI docs - which basically say thermals may become a problem if you mess with power settings.  I did download the ACPI sdk and look through the documentation and I didn't see any function that seemed to address turning on or off processors.  But I might have missed something.
...
I suspect, like Darius, that either the processors aren't getting turned off, or something is turning them back on.  This appears to happen on both Ryzen and Intel processors. One using SNAP and the other using Panaroma.

From a 'good to know how to configure this' perspective the easiest way to TEST this on your machine is to DISABLE the ACPI PowerManager (as per the note that Dave posted, see acpid.cfg file). I believe ACPI daemon dynamically picks this up, so no reboot is necessary.

Then you can shut OFF the cores you do not need running and test your WIN-OS/2 use.

If this work, you know precisely HOW to get this working when you need it working. After all, re-enabling the ACPI PowerManager is just as easy as disabling it. You could literally have a little pm_off.cmd & pm_on.cmd scripts that simply replace the appropriate acpid.cfg files, which ACPI PM then recognizes.

In my experience the big CPU temperature spikes only occur when you really start pushing the machine. We are talking here heavy FLOAT ops such as running the SYSBENCH FLOAT benchmark, etc.

For example: as I play around with this stuff on my end I find that the 48C idle temp of my AMD FX-8370 CPU (8 core, 5GHz) goes up to 51C...which is a pretty tiny amount of just 3C increase. But make note that this is only achieved by deploying the Noctua NH-15D CPU cooler, which is very much in the realm of the overclocking domain.

Prior to installing this cooler I was running a Corsair A70 setup, which was showing 55C at idle and when running the SYSBENCH FLOAT tests the temp would spike all the way to 64C. Heck, a couple of times (as I was screwing around with both CPU frequency and core voltage) I actually had the whole box automatically shut-down.

Soooo....with today's systems there is a good amount of protection built-in...but it's always good to review your specific specs to know exactly what your MAX values are.

Ultimately the experimentation is what will give you the true answers.

EDIT
====

HERE (https://man.netbsd.org/acpicpu.4) is a good summary of all of these C/P/T-states, how they relate to each other, etc.
« Last Edit: February 28, 2025, 08:56:25 pm by Dariusz Piatkowski »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5355
  • Karma: +127/-1
    • View Profile
Re: stopping cpus
« Reply #16 on: February 28, 2025, 05:31:13 pm »
Dave, everyone...
...
but perhaps the ACPI implementation on our platform just can't provide the sort of seamless power transition experience we normally see on other platforms?

Here, with my 7th gen I5, and last older one, the power transition experience is very smooth. When more cores are required, they come online quick.
As for other platforms. With Linux things work different. Rather then cores being taken offline and back online, the cores are throttled. At idle they run at 800Mhz and can step up all the way to the boost speed of 3.8Ghz. This happens fast and smoothly. This results in slightly lower temps at idle and hotter temps at full speed with temps over 80C, which is a bit scary.
I don't think on OS/2 that the boost speed ever happens.

Pete

  • Hero Member
  • *****
  • Posts: 1404
  • Karma: +13/-0
    • View Profile
Re: stopping cpus
« Reply #17 on: March 01, 2025, 01:28:43 am »
Hi All

For those considering running with the ACPI PowerManager disabled I can recommend water cooled systems as being less likely to overheat - unless the pump fails :-)


Regards

Pete

Doug Clark

  • Sr. Member
  • ****
  • Posts: 366
  • Karma: +12/-1
    • View Profile
Re: stopping cpus
« Reply #18 on: March 01, 2025, 08:52:46 pm »
Thank you everyone for your responses. 

What utility are you using to get real-time temperatures of the processors?


Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1428
  • Karma: +28/-0
    • View Profile
Re: stopping cpus
« Reply #19 on: March 02, 2025, 12:10:07 am »
Thank you everyone for your responses. 

What utility are you using to get real-time temperatures of the processors?

NONE...and that's the problem on our platform Doug, although there were chipset specific drivers released in the past, but I believe today that's pretty much 'ancient history'.

Well, I should clarify the above statement: I do not have AOS installed, and so there may in fact be some functionality in various utils that are part of AOS.

It is for this reason that I mentioned in my earlier post me currently looking into the ACPI API functionality that perhaps might expose this, assuming our ACPI implementation handles that, which I simply have no idea.

Tom

  • Full Member
  • ***
  • Posts: 224
  • Karma: +6/-0
    • View Profile
Re: stopping cpus
« Reply #20 on: March 02, 2025, 01:25:21 am »
What utility are you using to get real-time temperatures of the processors?

If you are using ArcaOS: type acpistat on a command line. At the end of the screen output it says:

Thermal information:
  Thermal zone 'THRM':   Current: 45 C  Critical: 100 C

The value behind 'Current' is what you are looking for.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5355
  • Karma: +127/-1
    • View Profile
Re: stopping cpus
« Reply #21 on: March 02, 2025, 01:38:01 am »
Thank you everyone for your responses. 

What utility are you using to get real-time temperatures of the processors?

I'm using an xcentre widget from Digi,
Code: [Select]
W:\SYS\apps\xwps\plugins\xcenter>bldlevel cput.dll
Build Level Display Facility Version 6.12.675 Sep 25 2001
(C) Copyright IBM Corporation 1993-2001
Signature:       @#Andrey Vasilkin:1.1.1#@##1## 2017-05-04 14:01:48      DIGI::r
u:RUS:::@@XCenter CPU temperature plugin DLL
Vendor:          Andrey Vasilkin
Revision:        1.01.1
Date/Time:       2017-05-04 14:01:48
Build Machine:   DIGI
Language Code:   ru
Country Code:    RUS
File Version:    1.1
Description:     XCenter CPU temperature plugin DLL

Forget the package it is in now and it only supports Intel CPU's. Arca Noae advises against using it but other then problems with an old Warpin package screwing up config.sys, had no problems.
ACPI might give you the temperatures, run acpistat. The tail here,
Code: [Select]
This system does not support CPU Performance Control via ACPI.

This system does not support CPU Throttling.

Thermal information:
  No Thermal information is available for this computer

No AC status is available for this computer

Power Manager is Enabled

Of course Linux seems to do most of the above :) If you have thermal information available, then there's an xcentre widget, CPU Temperature. Otherwise out of luck.

Doug Clark

  • Sr. Member
  • ****
  • Posts: 366
  • Karma: +12/-1
    • View Profile
Re: stopping cpus
« Reply #22 on: March 02, 2025, 06:47:02 am »
Thanks again guys - Tom, Dave, Darius.

When running ACPISTAT my Ryzen 5/MSI motherboard shows no thermal information available, while the Intel i5 8th gen/HP machine does shows thermal information.  The Ryzen also doesn't support throttling or performance control; the i5 supports throttling.

I am curious Darius what ACPISTAT shows on your Ryzen.




Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1428
  • Karma: +28/-0
    • View Profile
Re: stopping cpus
« Reply #23 on: March 02, 2025, 04:44:27 pm »
Hi Doug!

When running ACPISTAT my Ryzen 5/MSI motherboard shows no thermal information available, while the Intel i5 8th gen/HP machine does shows thermal information.  The Ryzen also doesn't support throttling or performance control; the i5 supports throttling.

So the 'throttling' functionality is something that used to be the orginal/default way of enabling power savings: after all if you were to tell the CPU to get down to just 25% of it's TOTAL output, you would subsequently see less voltage and current draw, less W being produced, and less thermal output.

Today however this functionality has been obsoleted by Power States, where the CPUs themselves are sophisticated enough to calculate the right combination of CPU frequency, voltage needed to support execution at that frequency, and the monitoring of the resulting temperature being generated. Now all that still has to be tied into/with with actual OS level execution and that's where the various ACPI methods come in, and in our case this is why the OS/2 implementation of ACPI uses the PowerManager daemon.

I am curious Darius what ACPISTAT shows on your Ryzen.

So in my case I'm actually using an older AMD CPU, FX-8370, which is a Vishera release of the Bulldozer architecture.

This box is heavily overclocked, which means higher CPU voltage, higher frequency (5GHz as opposed to the default 4GHz and 4.3GHz (boost) frequencies, which in turn requires me to implement specific BIOS settings required to support such an overclocked state. This means that in the BIOS itself I actually turned OFF AMD's C1E function, I shut off the CPU Phase Control function (which is normally motherboard specific as that allows the hardware to dynamically figure out how much power the CPU requires to support execution at a specific user-driven power level) and a few other power control functions.

In the end I do not use the ACPI PowerManager functionality since even if it wanted to control my CPU it wouldn't be able to do so since I had disabled all such BIOS level functionality. Subsequently I have no temperature readout even if I temporarily turn on PowerManager:

Code: [Select]
This system does not support CPU Performance Control via ACPI.

This system supports CPU Throttling. Current=100%

Thermal information:
  No Thermal information is available for this computer

No AC status is available for this computer

No Battery information is available for this computer
Power Manager is Enabled