I am developing Vulkan games. It is still a basic rendering program with some cornel boxed data. Apart from testing hairs, calculating fps, what are some tools to apply to test the performance of such a program? Would also appreciate for some resources to read up on.
1 Answer
The Vulkan layers provide some basic performance help. They are very easy to use (can be turned on via the Vulkan Configurator) and provide basic performance diagnostics. This is a good tool to just turn on and run regularly, its output gives enough info to look up whatever issue it finds in the spec. It even provides a basic fps calculator. The tool can be found in the vulkan install location bin/vkconfig.exe. Once the tool is running look under message severity and make sure performance is checked.
Render Doc: There is a dedicated Vulkan layer just to help out with using RenderDoc. It is advertised as a debugger but provides excellent information about GPU state which is very helpful with many performance tasks such as helping tweak shader programs.
Vulkan itself provides performance aids like VK_KHR_performance_query. Use vkcmdwritetimestamp (google it for pages that help with its usage) to time commands in a vulkan queue.
As you can image the list goes on and on, but these are some good places to start.