diff options
author | rodri <rgl@antares-labs.eu> | 2024-04-15 22:26:34 +0000 |
---|---|---|
committer | rodri <rgl@antares-labs.eu> | 2024-04-15 22:26:34 +0000 |
commit | fc8284f73c62cc205bcdc1be04802763a019ec1b (patch) | |
tree | 92522a33309c427dcf632e3122898709f26a4374 /graphics.h | |
parent | 4d88a3779d1f5e15ea7ea3bca5330b9c8d1ef2fd (diff) | |
download | libgraphics-fc8284f73c62cc205bcdc1be04802763a019ec1b.tar.gz libgraphics-fc8284f73c62cc205bcdc1be04802763a019ec1b.tar.bz2 libgraphics-fc8284f73c62cc205bcdc1be04802763a019ec1b.zip |
add some instrumentation to measure pipeline stage time.
Diffstat (limited to 'graphics.h')
-rw-r--r-- | graphics.h | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -29,6 +29,7 @@ typedef struct FSparams FSparams; typedef struct SUparams SUparams; typedef struct Shadertab Shadertab; typedef struct Renderer Renderer; +typedef struct Rendertime Rendertime; typedef struct Renderjob Renderjob; typedef struct Framebuf Framebuf; typedef struct Framebufctl Framebufctl; @@ -175,6 +176,11 @@ struct Renderer Channel *c; }; +struct Rendertime +{ + uvlong t0, t1; +}; + struct Renderjob { Ref; @@ -183,6 +189,10 @@ struct Renderjob Shadertab *shaders; Channel *donec; + struct { + Rendertime R, E, Tn, Rn; + } times; + Renderjob *next; }; @@ -234,6 +244,11 @@ struct Camera uvlong min, avg, max, acc, n, v; uvlong nframes; } stats; + + struct { + Rendertime R[100], E[100], Tn[100], Rn[100]; + int cur; + } times; }; /* camera */ |