This project provides tools to benchmark and analyze performance characteristics of Intel CPUs with hybrid architecture (P-cores and E-cores) on Windows systems.
main.cpp
: Demonstrates basic P-core and E-core task allocationbench.cpp
: Performs comprehensive benchmarking of core switching and performance
main.exe
bench.exe # Run mixed P-core and E-core benchmark
bench.exe --p-core-only # Run P-core only benchmark
bench.exe --e-core-only # Run E-core only benchmark
- Open the solution file in Visual Studio 2019 or later
- Select Release configuration
- Build Solution (F7)
Build with MSVC compiler from Developer Command Prompt:
cl /O2 main.cpp
cl /O2 bench.cpp
For detailed analysis and benchmark results, check out: Benchmarking Context Switching Between P-cores and E-cores on Intel CPUs
# Benchmark Results on Intel 13700KF
.\bench.exe
Number of P-Cores: 8
Number of E-Cores: 8
Benchmark completed in 11180 milliseconds.
.\bench.exe --p-core-only
Number of P-Cores: 8
Number of E-Cores: 8
Benchmark completed in 7261 milliseconds.
.\bench.exe --e-core-only
Number of P-Cores: 8
Number of E-Cores: 8
Benchmark completed in 7447 milliseconds.
- Windows 10/11 operating system
- CPU with hybrid architecture (e.g., Intel 12th gen or later)
- Visual Studio 2019 or later, or MSVC compiler