vkmark(1)

πŸ“¦
version 2025.01 Β· 2 versions
, in alpine 3.24, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– vkmark πŸ’–

okay bestie, sit down, hydrate, and let me tell you about vkmark β€” it's a Vulkan benchmark suite, living in the General Commands Manual section 1, and honestly? she's that girl. ✨


✨ NAME ✨

vkmark β€” Vulkan benchmark suite πŸ¦‹


🌸 SYNOPSIS 🌸

vkmark [options]

that's it. that's the whole vibe. options only, no positional drama. πŸ’…


πŸŽ€ DESCRIPTION πŸŽ€

vkmark is an extensible Vulkan benchmarking suite, and she comes with targeted, configurable scenes. like, she doesn't just do one thing and call it a day β€” she's flexible, she's extensible, she's got range. main character energy fr fr. πŸ‘‘


πŸ’… OPTIONS πŸ’…

  • -b, --benchmark BENCH β€” a benchmark to run, written as 'scene(:opt1=val1)*'. and yes bestie, you can use this option multiple times β€” stack 'em up, go off. πŸ“
  • -s, --size WxH β€” size of the output window (default: 800x600). pick your dimensions, choose your destiny. ✨
  • --fullscreen β€” run in fullscreen mode (equivalent to --size -1x-1). immersive. cinematic. iconic. 🌈
  • -p, --present-mode PM β€” Vulkan present mode (default: mailbox). your choices are [immediate, mailbox, fifo, fiforelaxed] β€” pick your fighter. πŸ’€
  • --pixel-format PF β€” Vulkan pixel format (default: choose best). she'll decide for you if you don't wanna. no thoughts, head empty, best pixel format. 🫢
  • -l, --list-scenes β€” display information about the available scenes and their options. literally the "what are my options" button. πŸ™ˆ
  • --show-all-options β€” show all scene option values used for benchmarks. ngl, by default only the options you explicitly set are shown β€” this flag spills all the tea. β˜•
  • --winsys-dir DIR β€” directory to search in for window system plugins. πŸ“
  • --data-dir DIR β€” directory to search in for scene data files. πŸ“‚
  • --winsys WS β€” window system plugin to use (default: choose best). options: [xcb, wayland, kms] β€” a whole menu, girl. πŸ’œ
  • --winsys-options OPTS β€” window system options as 'opt1=val1(:opt2=val2)*'. πŸŽ€
  • --run-forever β€” run indefinitely, looping from the last benchmark back to the first. infinite. loop. the way she just keeps going?? 😭
  • -d, --debug β€” display debug messages. for when you wanna know everything. πŸ”
  • -D, --use-device β€” use Vulkan device with specified UUID. so specific. so precise. ✨
  • -L, --list-devices β€” list Vulkan devices. roll call, everybody say present. πŸ“‹
  • -h, --help β€” display help. bestie's always got your back. 🫢

πŸ”₯ BENCHMARKS πŸ”₯

okay so vkmark offers a suite of scenes that can be used to measure various aspects of Vulkan performance. and the way in which each scene is rendered? configurable through a set of options, obviously. to get the available scenes and their acceptable options, you can use the -l, --list-scenes command line option. go look, she won't gatekeep. πŸ’…

in vkmark, a benchmark is defined as a scene plus a set of option values</b>. you specify the list and order of the benchmarks to run with the -b, --benchmark command line option (possibly multiple times, we've been over this). if you don't specify any benchmarks, a default set of benchmarks is used. and if a benchmark option isn't specified, it just assumes its default value (which is listed with -l, --list-scenes). no drama, defaults are defaults. 🌸

and here's the special case bestie, pay attention: a benchmark description string is allowed to not contain a scene name β€” i.e. it starts with ':'. when that happens, any specified option values get used as the default values for benchmarks following this description string. it's giving "set the vibe for everything after me." periodt. πŸ‘‘


⭐ EXAMPLES ⭐

to run the default benchmarks:

vkmark

to run a benchmark using scene 'vertex' with a 'duration' of '5.0' seconds and 'interleave' set to 'false':

vkmark -b vertex:duration=5.0:interleave=false

to run a series of benchmarks, use the -b, --benchmark command line option multiple times:

vkmark -b vertex:duration=5.0 -b clear:color=1.0,0.5,0 -b cube

to set default option values for benchmarks and run them:

vkmark -b :duration=2.0 -b vertex -b clear -b :duration=5.0 -b cube

to set default option values for the default benchmarks and run them:

vkmark -b :duration=2.0

see how she just stacks?? the way that works is so satisfying. πŸ˜­πŸ’–


🌈 AUTHOR 🌈

vkmark was written by Alexandros Frantzis. king behavior, we stan. πŸ‘‘


and that's the whole page bestie!! vkmark version 2025.01, dated January 2025. go benchmark something and slay. bye bestie!! πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…πŸ«ΆπŸ‘‘πŸŒˆβ­