mesa/src/vulkan/overlay-layer
Georg Lehmann f239bb8020 Vulkan Overlay: Don't try to change the image layout to present twice
The render pass already does the transition.
The pipeline barrier is still needed to transfer the queue family ownership.

Fixes: 320b0f66c2 ("vulkan/overlay: bounce image back to present layout")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3740>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3740>
2020-02-07 14:23:23 +00:00
..
mesa-overlay-control.py vulkan/overlay: Add basic overlay control script. 2019-12-13 20:53:44 +00:00
meson.build vulkan/overlay: Add basic overlay control script. 2019-12-13 20:53:44 +00:00
overlay.cpp Vulkan Overlay: Don't try to change the image layout to present twice 2020-02-07 14:23:23 +00:00
overlay.frag
overlay.vert
overlay_params.c vulkan/overlay: Add a control socket. 2019-12-13 20:53:44 +00:00
overlay_params.h vulkan/overlay: Add a control socket. 2019-12-13 20:53:44 +00:00
README vulkan/overlay: Update docs. 2019-12-13 20:53:44 +00:00
TODO vulkan/overlay: add TODO list 2019-05-02 17:02:57 +01:00
VkLayer_MESA_overlay.json vulkan/overlay: install layer binary in libdir 2019-02-27 11:45:42 +00:00

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".