Heterogeneous Power Plan settings can be used to provide guidance to the Windows scheduler and core parking subsystems regarding thread scheduling and core parking preferences in systems with Hybrid Core Architecture, featuring at least to different types of cores Performant (P) and Efficiency (E) cores. Quick CPU offers quick access to these settings from the main application form for 12th+ generation Intel CPUs. These settings are also accessible at any time via Quick CPU's dedicated Power Plan management interface for all CPU platforms.
There are three diffrent sets of power settings that will be covered here.
The options include:
The primary difference between long and short running threads is determined by the duration of the workload that needs to be scheduled.
Short Running Threads: These threads are designed to last for a very short period, handling miscellaneous tasks such as small asynchronous procedure calls, minor data calculations, and background activities. The duration of these tasks can typically be measured in processor time quantum units or milliseconds.
Long Running Threads: These tasks require more time to execute and are associated with activities that demand continuous and sustained computational resources. Examples include data processing, video editing, or complex calculations performed by an application. The duration of these tasks varies depending on the workload and can extend for as long as the lifetime of the application process that originated the thread.
The operating system can determine the nature of a thread based on:
Typically, Efficiency cores (E-Cores) are well-suited to execute short running threads, contributing to energy efficiency and reduced heat generation. In oposite, Performant cores (P-Cores) can leverage their higher performance and computational capacity to execute long running threads. It's important to note that there are no strict boundaries in assigning workloads to P or E cores. The actual scheduling decision can depend on the current system state and a variety of other factors.
We will conduct two distinct tests targeting different scenarios:
Configuration:
To execute these tests, a generic, non-affinitized stress test will be used to generate a CPU load between 20-50%. This level of load is representative of what one might experience during average gaming sessions. It's important to note that most benchmarks or stress tests designed for multithreaded systems are not suitable for this test, as they employ Affinity to target specific CPU cores for workload execution.
To achieve this goal, we can simply use an online stress test that will execute in the context of a browser without the ability to explicitly target specific CPU cores.
This test demonstrates the option for users who prefer to restrict or minimize the use of processor E-Cores (Efficiency cores).
Setting selection
In the image below, you can see that close to 95% of the workload is allocated to the performant cores (P-Cores) (Cores 1-8), while the remaining 5% (miscellaneous workload) is assigned to the remaining 16 efficiency cores (E-Cores) (Cores 9-24).
This test demonstrates the option for users who prefer to restrict or minimize the use of processor P-Cores (Performant cores).
Setting selection
In the image below, you can see that close to 98% of the workload is allocated to the efficient cores (E-Cores) (Cores 9-24), while the remaining >2% (miscellaneous workload) is assigned to the remaining 8 performant cores (P-Cores) (Cores 1-8).
Enhance and monitor system performance, customize favorite settings and more…