[Mesa-dev] vkpipeline-db: a shader-db for Vulkan

Samuel Pitoiset samuel.pitoiset at gmail.com
Fri Apr 6 08:51:47 UTC 2018


Hi folks,

I have been working on a new developer tool called vkpipeline-db, which 
is the equivalent of shader-db for Vulkan. This tool is composed of two 
parts:

1) A Vulkan layer that allows to capture graphics/compute pipelines 
(including states, render pass and shader modules). The layer will 
create and store .pipeline_test files into the captured directory which 
can be set with VKPIPELINE_DB_CAPTURE_PATH.

2) A runner that allows to replay the capture pipelines in order to get 
shader statistics (like number of SGPRs/VGPRs for AMD hardware). 
Currently, the runner requires VK_AMD_shader_info because the tool has 
been initially developed for RADV. Other Vulkan drivers might want to 
implement this extension, or use a different way for getting shader stats.

The RADV team has been using it for weeks, it seems to work correctly 
for our needs. Though, I won't be surprised if someone finds bugs 
because it's a new tool.

The repository can be found here:
https://cgit.freedesktop.org/mesa/vkpipeline-db

Feel free to test, and send bugs reports/feedback/patches on mesa-dev.

Cheers,
Samuel Pitoiset.


More information about the mesa-dev mailing list