Skip to the content.

Policies

Critical Policy

Active Policy

Table

ART

target source AC0 AC1 AC2 AC3 AC4 AC5 AC6 AC7 AC8 AC9
CPU FAN 100 80 50

Active Policy2

Table

ACPR

Targe Source ControlKnob Trip point control point control increament sample period
SEN TFN RPM 40 5000 10 5
SEN TFN RPM 50 10000 10 5

Passive Policy

limiting algorithm

if temperature > PSV:
    monitor target
    for each source target can limit:
        if the source is available for requests from the target:
            if source == target:
                if there is a package domain with controls to limit:
                    choose the package domain.
                else:
                    choose domains that don't report temperature.
                    choose the domain with the highest temperature.
            if source != target:
                if there is a package domain with controls to limit:
                    choose the package domain.
                else:
                    choose domains that do not report utilization.
                    choose the domain with the highest utilization and priority.
            request limit to the next available control knob for each domain chosen for the target.
        schedule a callback after the sample period for the target and source relationship.
        limit the source if it has not been adjusted within the minimum active sample period.

unlimiting algorithm

if temperature < PSV:
    for each source target can unlimit:
        if the source is available for requests from the target:
            if source == target:
                choose domains that do not report temperature.
                choose the domain with the lowest temperature.
                if no domains were chosen:
                    choose the package domain.
            if source != target:
                choose domains with the lowest priority.
                if no domains were chosen:
                    choose the package domain.
            request unlimit to the next available control knob for each domain chosen for the target.
            schedule a callback after the sample period for the target and source relationship.
        unlimit the source if it has not been adjusted within the minimum active sample period
    if no sources remain to be unlimited:
        if temperature >= PSV - hysteresis:
            schedule a callback after the shortest sample period for the target.
        else:
            stop monitoring target.
            remove all outstanding control requests for target.

Table

TRT

Target Source Influence Sample Period
storage CPU 8 20
CPU CPU 8 20

Control Limit

Passive Policy2

Table

PSVT

Targe trip point Sample period Priority Source Domain Control Knob Limit StepSize Limit Coeff Unlimit Coeff
CPU 50 5 20 TCPU Multifunction PL1 MAX 500 10 10
CPU 50 5 20 TCPU Multifunction PL1 MAX 1 10 10

Adaptive Performance

Features Training.

Supported conditions

Tables

APCT

It will point to one row in action tably by action. It might contains 10 minterms. And FOR will be considered as different minterms.

Action Condition Participant Domain Comparator Argument Operator
1 Power Slider IETM Other == Better Performance AND

APAT

It will contain action to trigger from the condition table and multiple participant action can be tied with it.

Action Set Participent Domain Code Argument
1 CPU Multifunction PL1 15000

WorkLoad Hint Configuration

Can be used for checking with application and take action based on the application.

Workload Hint Value Application Names
1 notepad.exe

Power Boss

Supported conditions

Supported Actions

And here is a list of all supported action codes for PB:

different scenario

Scenario Expectations
set an invalid value Value is added to the “Requested Values” but shows “FAILED” since the action will fail
set value outside the range value snapped to the allowable range before being requested. snapped value will be in the table.
set a valid value after invalid one request updated to show failed. arbitrator status tab will show valid request

TABLES

PBCT

It will point to one row in action tably by action. It might contains 10 minterms. And FOR will be considered as different minterms.

Action Condition Participant Domain Comparator Argument Operator
1 Power Source IETM Other == AC AND
2 Power Source IETM Other == DC AND

PBAT

It will contain action to trigger from the condition table and multiple participant action can be tied with it.

Action Set Participent Domain Code Argument
1 CPU Multifunction PL1 15000
2 CPU Multifunction PL1 PBMT1

PBMT

VTMT

Extra.

|what|where| |–|–| |excel for math calculation|\\chakotay\SoftVal\DPTF_tools_Policies\PowerBoss\Power_Boss_Testing_Aids| |tuning assistant link|link|

Virtual Sensor Policy

Tables

VSCT

Target Domain Coefficent Type Coefficient Operation Alpha TriggerPoint
TCPU Multifunction Temperature 500 Addition 700 20
sen2 Other Temperature 600 Subtraction 300 30

VSPT

this table data is 1/10th precision. |temp|sample period| |–|–| |29.9|30| |39.2|10| |49.9|1|

Polling vs One-Time Calculation

  1. Initializing the temperature on DPTF start. This is a one-time calculation that is performed each time a new target comes online and is used to calculate the virtual temperature.
  2. If no trigger points exist in the VSCT at initialization, begin polling. If all trigger points are ‘X’ or invalid, polling can begin based on the temperature calculated at initialization.
  3. When the VSCT table is changed, the virtual sensor re-evaluates all the targets in its table then re-initializes its temperature value as a one-time calculation. If no triggers exist, it begins to poll in order to calculate temperature.
  4. If one or more trigger points are crossed, begin polling until all trigger points are uncrossed.
  5. A one-time calculation can be forced at any time by sending DPTF the recalculation event. Details for that are in the BIOS Writer’s Guide.

Dynamic Participent

RFIM (RF Interference Mitigation)

Power Share

Algorithm

Interface between CPU and Graphics is PCIe

  1. Get CPU Energy Consupmtion.
  2. Get CPU Utilization.
  3. Get Alto Energy Consupmtion.
  4. Get Alto Utilization.
  5. Set CPU Power
  6. Set Alto Power.