Implement support for kernel ftrace / gpuvis

When debugging vulkan, it can be extremely helpful to get a clear picture of what’s actually happening in the driver on a realtime basis. The linux kernel has a built-in debugging feature called ftrace which allows drivers to log events that userspace tools like trace-cmd can receive and capture.

In particular, tools such as gpuvis (https://github.com/mikesart/gpuvis) have helped immensely in optimizing the performance of my application for AMD GPUs; but I’m lacking an equivalent for nvidia. It would be great if you could add support for ftrace in the driver (similar to what the open-source amdgpu does) for at least command scheduling and completion (fences signalling), and ideally also vblank events.