From: Rafael Sadowski Subject: Re: New: benchmarks/vkmark - a Vulkan benchmark To: Thomas Frohwein Cc: ports@openbsd.org, jsg@jsg.id.au Date: Mon, 23 Feb 2026 10:40:03 +0100 On Sun Feb 22, 2026 at 12:44:27PM -0800, Thomas Frohwein wrote: > Hi, > > Please find attached the port of vkmark, a 3D benchmark in the vein of > the venerable glmark2, but for vulkan. It is used on Linux and there is > also a port on FreeBSD. Having this will help measure our GPU > performance. > > The GH homepage [1] shows some examples for how to run it with > different options. There is some data on openbenchmarking.org [2] that > could be carefully used for comparison (their version seems a few > years old now). I also found a little post on the background behind > this project at [3]. > > I ran the default (just `vkmark`) on my desktop PC with Radeon RX 6700 > XT and got a score of 10714. > > DESCR: > vkmark is an extensible Vulkan benchmarking suite with targeted, > configurable scenes. vkmark offers a suite of scenes that can be used to > measure various aspects of Vulkan performance. The way in which each > scene is rendered is configurable through a set of options. In vkmark, a > benchmark is defined as a scene plus a set of option values. You can > specify the list and order of the benchmarks to run. > > ok to import? > > [1] https://github.com/vkmark/vkmark > [2] https://openbenchmarking.org/test/pts/vkmark > [3] > https://www.collabora.com/news-and-blog/blog/2017/07/18/vkmark-more-than-a-vulkan-benchmark/ Does not build for me: FAILED: src/libvkmark-core.a.p/vulkan_state.cpp.o c++ -Isrc/libvkmark-core.a.p -Isrc -I../vkmark-2025.01/src -I/usr/local/include -fdiagnostics-color=always -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST -D_FILE_OFFS ET_BITS=64 -Wall -Winvalid-pch -std=c++17 '-DVKMARK_WINDOW_SYSTEM_DIR="/usr/local/lib/vkmark"' '-DVKMARK_DATA_DIR="/usr/local/share/vkmark"' '-DVKMARK_VERSION_STR="2025.01" ' -O2 -pipe -fPIC -MD -MQ src/libvkmark-core.a.p/vulkan_state.cpp.o -MF src/libvkmark-core.a.p/vulkan_state.cpp.o.d -o src/libvkmark-core.a.p/vulkan_state.cpp.o -c ../vkmar k-2025.01/src/vulkan_state.cpp ../vkmark-2025.01/src/vulkan_state.cpp:203:14: warning: 'setPfnUserCallback' is deprecated: This setter is deprecated. Use the one taking a function pointer type from the v k-namespace instead. [-Wdeprecated-declarations] 203 | .setPfnUserCallback(debug_callback); | ^ /usr/local/include/vulkan/vulkan_structs.hpp:32329:5: note: 'setPfnUserCallback' has been explicitly marked deprecated here 32329 | VULKAN_HPP_DEPRECATED( "This setter is deprecated. Use the one taking a function pointer type from the vk-namespace instead." ) | ^ /usr/local/include/vulkan/vulkan_hpp_macros.hpp:213:42: note: expanded from macro 'VULKAN_HPP_DEPRECATED' 213 | # define VULKAN_HPP_DEPRECATED( msg ) [[deprecated( msg )]] | ^ ../vkmark-2025.01/src/vulkan_state.cpp:207:24: error: no matching member function for call to 'createDebugUtilsMessengerEXT' 207 | instance().createDebugUtilsMessengerEXT(debug_create_info, nullptr, dud), | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/local/include/vulkan/vulkan_funcs.hpp:16273:59: note: candidate function template not viable: no known conversion from 'const DebugUtilsMessengerCreateInfoEXT' to 'con st DebugUtilsMessengerCreateInfoEXT *' for 1st argument; take the address of the argument with & 16273 | VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Instance::createDebugUtilsMessengerEXT( const DebugUtilsMessengerCreateInfoEXT * pCreateInfo, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/local/include/vulkan/vulkan_funcs.hpp:16289:107: note: candidate template ignored: requirement 'detail::isDispatchLoader<(anonymous namespace)::DebugUtilsDispatcher>:: value' was not satisfied [with Dispatch = DebugUtilsDispatcher] 16289 | VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE typename ResultValueType::type Instance::createDebugUtilsMessengerEXT( | ^ 1 warning and 1 error generated.