Hi everyone, one image is better than a thousand words:

http://people.freedesktop.org/~mareko/gallium-hud.png

So there you have it. This gallium module can draw transparent graphs and text 
on top of what apps are rendering. By default, it can show framerate, cpu load 
(each CPU or the average of all of them), and the results of 
PRIMITIVES_GENERATED and OCCLUSION_COUNTER queries (the latter is printed as 
"pixels rendered"). Furthermore, there is a new interface for gallium allowing 
drivers to expose driver-specific queries in a way similar to 
GL_AMD_performance_monitor. It uses the existing pipe_query interface. Drivers 
can use this to expose performance counters or other internal information. BTW, 
I guess I should mention that I ripped the font off from freeglut.

The HUD is controlled by the GALLIUM_HUD environment variable, where you can 
list names of data sources. Set GALLIUM_HUD=help for more info, it also prints 
all available names (including the driver-specific queries). This is what I 
used for the image above:

GALLIUM_HUD="cpu0+cpu1+cpu2+cpu3:100,cpu:100,fps;draw-calls,requested-VRAM+requested-GTT,pixels-rendered"

So basically I'd like to be able to display as much useful info in the HUD as 
possible. We should definitely add some ioctls for querying useful stats from 
the kernel DRM/TTM and be able to see in real time what happens in Mesa and the 
kernel. It's pretty easy - just expose a new query through the gallium 
interface and the HUD will automatically pick it up.

(for moderators: the second patch might get stuck in the moderation queue)

Marek
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to