blob: 20ab73103e7cf1ac83cedea5584900764cf40ad3 [file] [log] [blame]
A Vulkan layer to display information about the running application
using an overlay.
To turn on the layer run :
VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay /path/to/my_vulkan_app
List the available statistics :
VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG=help /path/to/my_vulkan_app
Turn on some statistics :
VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG=submit,draw,pipeline_graphics /path/to/my_vulkan_app
Position the layer :
VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG=submit,draw,pipeline_graphics,position=top-right /path/to/my_vulkan_app
Dump statistics into a file:
VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG=position=top-right,output_file=/tmp/output.txt /path/to/my_vulkan_app
Dump statistics into a file, controlling when such statistics will start
to be captured:
VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG=position=top-right,output_file=/tmp/output.txt,control=mesa_overlay /path/to/my_vulkan_app
The above command will open a unix socket with abstract path
'mesa_overlay'. Once a client connects to the socket, the overlay layer
will immediately send the following commands to the client:
:MesaOverlayControlVersion=1;
:DeviceName=<device name>;
:MesaVersion=<mesa version>;
The client connected to the overlay layer can enable statistics
capturing by sending the command:
:capture=1;
And disable it by emitting
:capture=0;
By default, capture is enabled when an output_file is specified, but it
will be disabled by default when a control socket is in use. In the
latter case, it needs to be explicitly enabled through the sockets, by
using the commands above.
The provided script overlay-control.py can be used to start/stop
capture. The --path option can be used to specify the socket path. By
default, it will try to connect to a path named "mesa_overlay".