27.10.2015 Views

Advanced Configuration and Power Interface Specification

ACPI_6.0

ACPI_6.0

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Advanced</strong> <strong>Configuration</strong> <strong>and</strong> <strong>Power</strong> <strong>Interface</strong> <strong>Specification</strong><br />

Table 8-253 Processor Aggregator Device Objects<br />

Object<br />

_PUR<br />

Description<br />

Requests a number of logical processors to be placed in an idle state<br />

8.5.1 Logical Processor Idling<br />

In order to reduce the platform’s power consumption, the platform may direct OSPM to remove a<br />

logical processor from the operating system scheduler’s list of processors where non-processor<br />

affinitized work is dispatched. This capability is known as Logical Processor Idling <strong>and</strong> provides a<br />

means to reduce platform power consumption without undergoing processor ejection / insertion<br />

processing overhead. Interrupts directed to a logical processor <strong>and</strong> processor affinitized workloads<br />

will impede the effectiveness of logical processor idling in reducing power consumption as OSPM is<br />

not expected to re-target this work when a logical processor is idled.<br />

8.5.1.1 PUR (Processor Utilization Request)<br />

The _PUR object is an optional object that may be declared under the Processor Aggregator Device<br />

<strong>and</strong> provides a means for the platform to indicate to OSPM the number of logical processors to be<br />

idled. OSPM evaluates the _PUR object as a result of the processing of a Notify event on the<br />

Processor Aggregator device object of type 0x80.<br />

Arguments:<br />

None<br />

Return Value:<br />

A Package as described below.<br />

Return Value Information<br />

Package<br />

{<br />

RevisionID // Integer: Current value is 1<br />

NumProcessors // Integer<br />

}<br />

The NumProcessors package element conveys the number of logical processors that the platform<br />

wants OSPM to idle. This number is an absolute value. OSPM increments or decrements the number<br />

of logical processors placed in the idle state to equal the NumProcessors value as possible. A<br />

NumProcessors value of zero causes OSPM to place all logical processor in the active state as<br />

possible.<br />

OSPM uses internal logical processor to physical core <strong>and</strong> package topology knowledge to idle<br />

logical processors successively in an order that maximizes power reduction benefit from idling<br />

requests. For example, all SMT threads constituting logical processors on a single processing core<br />

should be idled to allow the core to enter a low power state before idling SMT threads constituting<br />

logical processors on another core.<br />

494 April, 2015 Version 6.0

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!