diff options
author | Rob Clark <robdclark@chromium.org> | 2020-03-07 10:23:44 -0800 |
---|---|---|
committer | Rob Clark <robdclark@chromium.org> | 2020-03-07 15:16:15 -0800 |
commit | 28c3af8445a14b4920a190157e660f35d2e44368 (patch) | |
tree | f6e8dead9a3ef24b092fbd592aea34936cf14ca5 /common.h | |
parent | daea3dd7d5727116025e0c18ba97ff104dcd546d (diff) | |
download | kmscube-28c3af8445a14b4920a190157e660f35d2e44368.tar.gz |
kmscube: add AMD_performance_monitor support
Only wired up for shadertoy mode, other modes aren't likely to be
interesting.
Diffstat (limited to 'common.h')
-rw-r--r-- | common.h | 19 |
1 files changed, 19 insertions, 0 deletions
@@ -122,6 +122,19 @@ struct egl { PFNEGLCLIENTWAITSYNCKHRPROC eglClientWaitSyncKHR; PFNEGLDUPNATIVEFENCEFDANDROIDPROC eglDupNativeFenceFDANDROID; + /* AMD_performance_monitor */ + PFNGLGETPERFMONITORGROUPSAMDPROC glGetPerfMonitorGroupsAMD; + PFNGLGETPERFMONITORCOUNTERSAMDPROC glGetPerfMonitorCountersAMD; + PFNGLGETPERFMONITORGROUPSTRINGAMDPROC glGetPerfMonitorGroupStringAMD; + PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC glGetPerfMonitorCounterStringAMD; + PFNGLGETPERFMONITORCOUNTERINFOAMDPROC glGetPerfMonitorCounterInfoAMD; + PFNGLGENPERFMONITORSAMDPROC glGenPerfMonitorsAMD; + PFNGLDELETEPERFMONITORSAMDPROC glDeletePerfMonitorsAMD; + PFNGLSELECTPERFMONITORCOUNTERSAMDPROC glSelectPerfMonitorCountersAMD; + PFNGLBEGINPERFMONITORAMDPROC glBeginPerfMonitorAMD; + PFNGLENDPERFMONITORAMDPROC glEndPerfMonitorAMD; + PFNGLGETPERFMONITORCOUNTERDATAAMDPROC glGetPerfMonitorCounterDataAMD; + bool modifiers_supported; void (*draw)(unsigned i); @@ -174,6 +187,12 @@ init_cube_video(const struct gbm *gbm, const char *video, int samples) } #endif +void init_perfcntrs(const struct egl *egl, const char *perfcntrs); +void start_perfcntrs(void); +void end_perfcntrs(void); +void finish_perfcntrs(void); +void dump_perfcntrs(unsigned nframes, uint64_t elapsed_time_ns); + #define NSEC_PER_SEC (INT64_C(1000) * USEC_PER_SEC) #define USEC_PER_SEC (INT64_C(1000) * MSEC_PER_SEC) #define MSEC_PER_SEC INT64_C(1000) |