Skip to content

BrsVgl/PerformanceEfficiencySuite

Repository files navigation

Performance Efficiency Suite

Most Reviewers solely focus on what they consider to be the most important aspect of modern CPUs - the absolute performance. But this is only one side of the equation. Today Power Efficiency is at least as important - or to be more precise: The amount of energy (Wattseconds or Joules) a CPU needs in order to accomplish a given workload. Sadly most Reviewers shy away from the extra mile it needs to assess this aspect. This suite measures the Total Package Power of a CPU while running the Cinebench R23 benchmarks first in single-threaded mode, then running in multi-threaded mode. The results will be rendered in the provided Results.xlsx Excel file. To combine Efficiency and Performance there is also a score provided called Performance Efficiency Score (how amazingly inspired I am ;) ).

Table of contents

  1. How-To
  2. Example result
  3. Rankings
  4. Disclaimer
  5. Some explanations about the Suite
  6. Community
  7. Sweet-Spot-Finding
  8. Change-Log

How-To

  1. Unzip to wherever you want EXCEPT on your local OneDrive folder.
  2. Open Settings.txt and insert your local Cinebench R23 and Geekbench 5 directories.
  3. Run PES Start - it will ask for Administrator rights as these are needed for measuring Package Power
  4. Choose, which tests to run.
  5. Wait until the Powershell finishes.
  6. Open the Results Excel (recommended) Results LibreOffice file ...
  7. Allow external connections (to the generated CSV-files with the data)
  8. Enjoy and share your results
  9. If you want to do multiple measurements with different settings just copy the Excel file (inside the root-folder) before running and refreshing the data.

Example-Result

Result of my HP Envy 13 x360 AMD R7 4700U

Rankings

Ranking (Excel)

Cinebench R23 ST PES (Performance Efficiency Score)

CB23 ST PES Ranking

Cinebench R23 MT PES (Performance Efficiency Score)

CB23 MT PES Ranking

Cinebench R23 ST Performance-Energy-Matrix

CB23 ST Performance-Energy-Matrix

Cinebench R23 MT Performance-Energy-Matrix

CB23 MT Performance-Energy-Matrix

Cinebench R23 ST Consumption

CB23 ST Consumption Ranking

Cinebench R23 MT Consumption

CB23 MT Consumption Ranking

Disclaimer

I am by no means a Powershell professional or a professional Reviewer. I was just sick of the lack of information and wanted to propose a low-effort solution. Any input for further improvement is highly welcomed. Please feel free to use/extend/rip-off this solution as you wish. But please share your findings to the world.

Some explanations about the Suite

  • This Suite has been made possible by Michael Möller and his amazing free and open-source Open Hardware Monitor and his .NET Library OpenHardwareMonitorLib.dll - Thanks a lot!!!

    Homepage: https://openhardwaremonitor.org/

    GitHub: https://github.com/openhardwaremonitor

  • The results for the Package Power look pretty accurate compared to the sparse data the internet provides. Seems, that the vendors are much more honest with those sensors than they are with temperature etc.

  • The suite basically consists some powershell scripts and an Excel file for presentation purposes

    • RunAsAdminWrapper.ps1

      This is needed to have a convenient relative path shortcut in the root folder and request admin-rights at the same time

    • Main.ps1

      • After setting up some stuff it basically starts the Cinebench R23 one at a time. It then checks for the "Cinebench.exe" process being active.
      • While this is true it queries the Package Power Sensor data with a lower bound of 10ms (in order to keep CPU-load of the script at bay).
      • After each run the aquired data gets pushed to CSV files located in the LogCsv subfolder.
    • Results.xslx

      • The Excel file basically just does some import, calculations and a hopefully nice presentation of the data.

      • Histogram

        The bold line shows a running average of the last 100 data-points which should be sufficiently accurate. The pale line shows each single data-point.

      • Calculation of Total Package Consumption

        To get that number we need the integral. That is why we first calculate the timeframe between two data-points and then multiply the measured value.

      • Everything else in that Excel is hopefully more or less self-explaining

Community

Anandtech.com Forum: https://forums.anandtech.com/threads/pes-assessing-power-and-performance-efficiency-of-x86-cpu-architectures.2597905/

3DCenter.org Forum: https://www.forum-3dcenter.org/vbulletin/showthread.php?t=606794

ComputerBase.de Forum: https://www.computerbase.de/forum/threads/performance-efficiency-suite-pes.2031876/

Sweet-Spot-Finding

One of the most interesting topics for a given CPU architecture is to find its sweet-spot - the TDP at which the Performance Efficiency of an architecture is at its optimum.

With PES and some method to govern the cTDP like in the BIOS, with RyzenAdj, etc. this is possible.

With my own AMD R7 4700U (Renoir) which is a 15w TDP CPU I tested all cTDPs from 10w up to 30w - and the results are astonishing.

The absolute sweet-spot of that APU is between 15w and 16w which leads me to the following findings:

  • The APU has been designed for that particular sweet-spot which might sound trivial, but...
  • To just take some already existing functional components and just mix them together and hitting exactly that spot is impossible.
  • In order to accomplish this AMD must have designed the Zen2-core (not the APU but the core in and of itself) for a sweet-spot of between 1.5w and 2w.
  • This not only makes sense from a mobile perspective but also from looking at the server-space where they deploy 64 core / 128 thread CPUs with a TDP of (starting from) 225w TDP (minus around 100w for the IO-die only). So this makes it a 64 core CPU for around 125w core-only-TDP which is around 2w per core.

Please have a look at the measurements (MT-only): Sweet-Spot-Finding

Change-Log

please see Releases

About

Measuring CPU Power and Performance Efficiency through a defined Workload (Cinebench R23)

Topics

Resources

Stars

Watchers

Forks