Linux 4.8 Intel P-State vs. CPUFreq Scaling Driver/Governor Benchmarks
Given the underlying work that's been happening in the CPUFreq/scheduler area and the introduce of the new Schedutil CPUFreq governor, I decided to run some fresh performance benchmarks of P-State and CPUFreq with the different governor options when testing from a Linux 4.8 Git kernel atop the current Fedora 25 development packages and using a Core i5 Skylake processor.
The CPUFreq/P-State tests on Linux 4.8 were done just to look at the overall quantitative performance and in this comparison not looking at the overall system power draw (my lone WattsUp Pro power meter was occupied on another system running tests). The Core i5-6600K Skylake system was running at stock speeds, which when using CPUFreq shows the 3.5GHz base frequency while using the P-State governor advertises it at 3.9GHz, just for those unaware in the reporting difference.
Tested for this comparison on the P-State side were the powersave and performance governors. With CPUFreq from the Linux 4.8-rc2 kernel were CPUFreq's ondemand, performance, schedutil, and powersave options.
With the graphics tests, CPUFreq Ondemand/Performance tended to be the fastest while P-State's performance mode tended to be quickly behind them. CPUFreq powersave tends to be the least performant.
CPUFreq powersave tends to perform the worst, for those new to Linux or haven't dived into CPU frequency scaling drivers/governors previously.