valleyofdoom / AutoGpuAffinity

Single-core GPU driver affinity benchmarking

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AutoGpuAffinity

Downloads

Important

I am not responsible for damage caused to your computer. There is a risk of your GPU driver not responding after restarting it during the tests. A possible fix for this is to set the PCIe link speed to the maximum supported in BIOS.

Usage

AutoGpuAffinity
GitHub - https://github.com/valleyofdoom

usage: AutoGpuAffinity [-h] [--config <config>] [--analyze <csv directory>] [--apply-affinity <cpu>]

optional arguments:
  -h, --help            show this help message and exit
  --config <config>     path to config file
  --analyze <csv directory>
                        analyze csv files from a previous benchmark
  --apply-affinity <cpu>
                        assign a single core affinity to graphics drivers
  • Windows Performance Toolkit from the Windows ADK must be installed for DPC/ISR logging with xperf (this is entirely optional)

  • Maintain overclock settings with MSI Afterburner throughout the benchmark if applicable

    • Save the desired settings to a profile (e.g. profile 1)

    • Configure the path and profile to load in config.ini

  • Download and extract the latest release from the releases tab

  • Run AutoGpuAffinity through the command-line and press enter when ready to start benchmarking

  • After the tool has benchmarked each core, the GPU affinity will be reset to the Windows default and a table will be displayed with the results. Green values indicate the highest value and yellow indicates the second-highest value for a given metric. The xperf report can be found in the session directory

Analyze Old Sessions

CSV logs can be analyzed at any time by passing the folder of CSVs to the --analyze argument (example below). This is helpful in situations where the user accidently closes the window as the results are displayed.

AutoGpuAffinity --analyze ".\captures\AutoGpuAffinity-170523162424\CSVs\"

Standalone Benchmarking

AutoGpuAffinity can be used as a regular benchmark if custom_cores is set to a single core in config.ini. If you do not usually configure the GPU driver affinity, the array can be set to [0] as the graphics kernel typically runs on CPU 0 by default. This results in an automated benchmark that is completely independent to benchmarking the GPU driver affinity. Keep in mind that AutoGpuAffinity resets the affinity policy to the default Windows state once the benchmark has ended (which is no specified affinity) so don't forget to re-configure your affinity policy afterwards again if applicable.

About

Single-core GPU driver affinity benchmarking

License:GNU General Public License v3.0


Languages

Language:Python 94.8%Language:PowerShell 5.2%