General Performance Settings

Performance Optimization and System Monitoring

CPU Core Parking

CPU Core Parking is a feature introduced in Windows Server 2008 R2. It allows the processor power management (PPM) engine and the scheduler to dynamically adjust the number of active CPU cores based on system workload. The PPM engine determines the minimum number of cores required to execute scheduled threads. Parked cores remain idle, with no active threads assigned, and enter low-power states unless they are needed for handling interrupts, DPCs, or other strictly affinitized tasks. The remaining active cores handle the workload, improving energy efficiency during periods of low CPU usage.

The main limitation of Windows' default core parking mechanism is its lack of flexibility. By default, users have limited control over the Core Parking Index, restricting the ability to fine-tune how cores are parked on their system.

This application provides complete control over CPU core activation and deactivation based on individual preferences. Users can also choose to keep all cores continuously active, as described below. Additionally, the application displays real-time core parking status through the CPU graph, allowing users to monitor which cores are enabled or parked. This information is continuously updated and can be accessed in the CPU Performance tab under 'Enabled Cores' and 'Parked Cores,' eliminating the need for manual refreshes.

Example: Understanding Core Parking and the Core Parking Index:

Consider a CPU with six cores (including logical cores), representing 100% of the system's processing power. Each core contributes approximately 17% (100 / 6 ≈ 16.6 ~ 17) of the total CPU power. If you want to ensure that at least four out of the six cores remain active at all times, you would set the Core Parking Index to 68% (17 × 4 = 68). This instructs the operating system (OS) to park only two cores while keeping four active. Setting the index to 100% prevents the OS from parking any cores, ensuring they all run continuously at full performance (see images below). Conversely, setting the index to 0% or close to it allows the OS to park as many cores as needed. Remember to press the "Apply" button after adjusting the threshold.

Frequency Scaling

The Minimum Processor State setting in Windows Power Plans determines the lowest frequency percentage that the CPU is allowed to operate at under low system load. Unlike Core Parking, which controls whether CPU cores are enabled or disabled, this setting ensures that the processor does not drop below a defined frequency threshold.

If set to a low percentage (e.g., 5-10%), the CPU can significantly reduce its speed during idle periods to conserve power. If set to 100%, the CPU will always run at or near its base frequency, even when system demand is low, which may increase power consumption and heat generation.

This setting does not prevent dynamic scaling beyond the base frequency—technologies like Intel Turbo Boost and AMD Precision Boost can still increase clock speeds when necessary. However, it does influence how aggressively the CPU downscales during periods of low activity.

Turbo Boost

During normal system operation, the CPU runs at its base clock speed, which defines its standard performance level. However, when the system encounters high processing demands, Turbo Boost technology allows the CPU to temporarily increase its clock frequency to handle workloads more efficiently.

The Processor Performance Boost Policy setting in Windows power plans controls how aggressively the CPU utilizes boost frequencies beyond its base clock speed. A higher setting enables more frequent and prolonged boost states, maximizing performance when needed. Conversely, a lower setting limits the CPU's ability to enter boost states, reducing power consumption and heat generation.

Intel Turbo Boost and AMD Precision Boost (previously known as Turbo CORE in older AMD processors) are dynamic performance enhancement technologies. They allow the processor to operate beyond its base frequency under favorable conditions, such as when power, temperature, and current limits permit. Unlike fixed overclocking, these technologies dynamically adjust CPU frequency based on real-time workloads and system conditions.

Here’s how Intel® Turbo Boost Technology 2.0 is officially described by Intel:

"Intel® Turbo Boost Technology 2.0 accelerates processor and graphics performance for peak loads, automatically allowing processor cores to run faster than the rated operating frequency if they’re operating below power, current, and temperature specification limits. Whether the processor enters into Intel® Turbo Boost Technology 2.0 and the amount of time the processor spends in that state depends on the workload and operating environment."

Performance Hint

The Performance Hint (also known as the Processor Performance Hint) is a feature in Windows that allows users to specify how the processor balances energy savings against maximum performance. This setting influences how the CPU dynamically adjusts its operating frequency and power consumption based on system workload.

Introduced in Windows 10, this feature is not available in earlier versions of the operating system.

Power Mode

Power Mode settings (also known as Power Mode Overlays) allow you to adjust how your system manages energy consumption and performance. You can choose from various modes such as Best Battery Life, Balanced, and Max Performance. These settings dynamically modify system behavior to either extend battery life, balance performance with energy efficiency, or maximize performance based on user preferences.

When Power Mode Control is Disabled

The Power Mode selection dropdown (combo box) may be disabled (grayed out) under the following conditions:

  • Legacy Power Plans: If a legacy power plan such as High Performance or Power Saver is selected, Power Mode control will be disabled. These plans are designed to operate with fixed power settings that do not support dynamic Power Mode adjustments.
  • OS Compatibility: If your operating system does not support Power Mode functionality, the Power Mode control will be unavailable.

Power Mode Selection is Reset to Balanced

If a selected power plan does not support Power Mode Overlay adjustments, the Power Mode setting will automatically reset to Balanced or No Overlay.

How to Restrict P and E-Cores using the Heterogeneous Settings

Heterogeneous Power Plan settings allow the Windows scheduler and core parking subsystems to optimize thread scheduling and core parking preferences on systems with a Hybrid Core Architecture—which includes both Performance (P) Cores and Efficiency (E) Cores. Quick CPU provides direct access to these settings on 12th+ generation Intel CPUs from the main application form. These settings are also accessible at any time via Quick CPU's dedicated Power Plan Management Interface for all CPU platforms.

Heterogeneous Settings

There are three different sets of power settings covered here:

  • Heterogeneous Policy: Determines how the system schedules workloads on hybrid core architectures. It is linked to the core parking engine, which decides workload execution paths by selecting either P-Cores or E-Cores. Several settings control the unpark strategy for cores.

    Example: For testing, we use the value "0", also called "Standard Core Parking," which prioritizes P-Cores for workload execution. Since our Core Parking Index is set to 100%, core parking is effectively disabled, meaning this setting will not impact the system.
  • Heterogeneous Thread Scheduling Policy (Normal or Long Threads): Defines how the Windows scheduler assigns threads to P-Cores or E-Cores.

    The available options include:

    1. All Processors (0): Utilize all available cores.
    2. Performant Processors (1): Schedule threads only on P-Cores.
    3. Prefer Performant Processors (2): Prefer P-Cores but allow E-Core usage.
    4. Efficient Processors (3): Schedule threads only on E-Cores.
    5. Prefer Efficient Processors (4): Prefer E-Cores but allow P-Core usage.
    6. Automatic (5): Let the OS determine scheduling dynamically.
  • Heterogeneous Short Running Thread Scheduling Policy: Uses the same options as the Long Thread Scheduling Policy but applies to short-lived tasks.
Note: Selecting a specific thread scheduling policy does not entirely prevent Windows from using both P-Cores and E-Cores. The OS may still override this behavior in certain cases, such as when Processor Affinity is explicitly set by an application or benchmark. However, most applications and games rely on the OS for automatic scheduling, so heterogeneous power plan settings should function as expected.

Short vs. Long Running Threads

The key difference between long and short running threads is the duration of the workload.

Short Running Threads: Typically last for a brief period, handling tasks such as small asynchronous procedure calls, minor calculations, or background processes. Their execution time is measured in processor time quanta or milliseconds.

Long Running Threads: Require extended execution times and are associated with tasks demanding sustained computational power, such as video editing, data processing, and large-scale calculations. Their execution time varies but can extend for the entire lifetime of an application.

How Windows Identifies Thread Types

The OS determines whether a thread is long or short based on:

  • Thread execution history.
  • Task type, priority, and workload analysis.
  • Explicit hints from application code.

Hybrid Core Assignment

Typically, E-Cores handle short-running threads, optimizing power efficiency and heat management.
Conversely, P-Cores execute long-running, computationally intensive threads. However, workload assignment is not strictly fixed, and the OS dynamically adjusts scheduling based on system conditions.

Testing

We conducted two tests simulating different core usage scenarios:

  • Restricting E-Cores (Efficiency Cores)
  • Restricting P-Cores (Performance Cores)

Test Configuration:

  • OS: Windows 11
  • Processor: Intel Core i9-13950HX (8 P-Cores + 16 E-Cores)
  • Quick CPU Charts Time Frame: 1-minute average

To conduct the tests, we used a generic, non-affinitized stress test that generates CPU loads between 20-50%, simulating gaming and real-world usage scenarios.
Most traditional benchmarks and stress tests target specific cores, making them unsuitable for this experiment. Instead, we used an online stress test running in a browser to ensure the workload was distributed dynamically by the OS.

Restricting the E-Cores Test

This test examines the option for users who prefer to minimize E-Core usage.

Test Settings:

  • Heterogeneous Policy: Standard Core Parking (0)
  • Normal Thread Policy: Performant Processors (1)
  • Short Thread Policy: Performant Processors (1)

In the image below, approximately 97% of the workload is assigned to P-Cores (Cores 1-8), while only 3% is allocated to E-Cores (Cores 9-24).

Restricting the P-Cores Test

This test examines the option for users who prefer to minimize P-Core usage.

Test Settings:

  • Heterogeneous Policy: Standard Core Parking (0)
  • Normal Thread Policy: Efficient Processors (3)
  • Short Thread Policy: Efficient Processors (3)

In the image below, approximately 98% of the workload is assigned to E-Cores (Cores 9-24), while only 2% is allocated to P-Cores (Cores 1-8).

About Our Software

Enhance and monitor system performance, customize favorite settings and more…