turol / vkoverhead

evaluating cpu overhead of vulkan drivers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

vkoverhead

vkoverhead is a tool for evaluating CPU-based overhead of Vulkan drivers. It was inspired heavily by drawoverhead from piglit.

Features

  • extreme granularity for profiling specific scenarios
  • simple to use
  • CSV output for ease of script parsing
  • zero dependencies

Building

Standard Meson build procedures should apply.

Cross-platform

This reuses code from Mesa and aims to be just as portable.

Usage

  • ./vkoverhead to run all test cases
  • ./vkoverhead -list to list all test cases
  • ./vkoverhead -test 5 to run test case 5
  • ./vkoverhead -submit-only to run only the submit-related test cases
  • ./vkoverhead -nocolor to suppress color output (for scripting)
  • ./vkoverhead -duration 5 to use a minimum duration of 5 seconds (default is 1 second)
  • ./vkoverhead -help for a less helpful summary of available options

Interpreting Results

vkoverhead.png

Results have 4 columns:

  • Test ID
  • Test name
  • Test result
  • Test result comparative performance

Each category of tests has a "base" case. Other cases in the category are compared against it, resulting in a percentage value which represents the overhead that each operation incurs. The goal is to have the percentage value for each case be as close to 100% as possible.

About

evaluating cpu overhead of vulkan drivers

License:MIT License


Languages

Language:C 90.3%Language:Python 6.5%Language:Meson 1.7%Language:C++ 0.7%Language:GLSL 0.4%Language:Objective-C 0.3%Language:JavaScript 0.1%Language:Shell 0.0%