Intel P-State vs. CPUFreq Frequency Scaling Performance On The Linux 5.0 Kernel
It's been a while since last running any P-State/CPUFreq frequency scaling driver and governor comparisons on Intel desktop systems, so given the recent release of Linux 5.0 I ran some tests for looking at the current state of affairs. Using an Intel Core i9 9900K I tested both the P-State and CPUFreq scaling drivers and their prominent governor options for seeing not only how the raw performance compares but also the system power consumption, CPU thermals, and performance-per-Watt.
Tested for this comparison was P-State powersave (the default on most distributions with Intel Sandy Bridge and newer), P-State performance, CPUFreq powersave, CPUFreq ondemand, CPUFreq performance, and CPUFreq schedutil (the newest governor for making use of scheduler utilization data to influence the governor's decisions). All tests were done on the same Intel Core i9 9900K system and running at stock speeds (the reported frequency differences in the system table just come down to whether boost vs. base clock frequencies are reported via sysfs depending upon the driver).
Ubuntu 18.10 was running on the i9-9900K box with RX Vega 64 graphics card while using a near-final snapshot of Linux 5.0. The Phoronix Test Suite that was used for benchmarking these different frequency scaling drivers/governors was monitoring the AC power consumption in real-time using a WattsUp Pro as well as logging the CPU core temperature under each of the tested scenarios. Tests ranged from gaming benchmarks to traditional CPU and system benchmarks.