iris_perf_init_vtbl(perf_cfg);
- gen_perf_init_metrics(perf_cfg, &screen->devinfo, screen->fd);
+ gen_perf_init_metrics(perf_cfg, &screen->devinfo, screen->fd,
+ true /* pipeline stats*/);
screen->monitor_cfg = monitor_cfg;
/* a gallium "group" is equivalent to a gen "query"
ice->batches[IRIS_BATCH_RENDER].hw_ctx_id,
screen->fd);
- gen_perf_init_metrics(perf_cfg, &screen->devinfo, screen->fd);
+ gen_perf_init_metrics(perf_cfg, &screen->devinfo, screen->fd, true /* pipeline_statistics */);
return perf_cfg->n_queries;
}
void
gen_perf_init_metrics(struct gen_perf_config *perf_cfg,
const struct gen_device_info *devinfo,
- int drm_fd)
+ int drm_fd,
+ bool include_pipeline_statistics)
{
- load_pipeline_statistic_metrics(perf_cfg, devinfo);
- gen_perf_register_mdapi_statistic_query(perf_cfg, devinfo);
+ if (include_pipeline_statistics) {
+ load_pipeline_statistic_metrics(perf_cfg, devinfo);
+ gen_perf_register_mdapi_statistic_query(perf_cfg, devinfo);
+ }
if (load_oa_metrics(perf_cfg, drm_fd, devinfo))
gen_perf_register_mdapi_oa_query(perf_cfg, devinfo);
}
void gen_perf_init_metrics(struct gen_perf_config *perf_cfg,
const struct gen_device_info *devinfo,
- int drm_fd);
+ int drm_fd,
+ bool include_pipeline_statistics);
/** Query i915 for a metric id using guid.
*/
{
struct gen_perf_config *perf = gen_perf_new(NULL);
- gen_perf_init_metrics(perf, devinfo, fd);
+ gen_perf_init_metrics(perf, devinfo, fd, false /* pipeline statistics */);
/* We need DRM_I915_PERF_PROP_HOLD_PREEMPTION support, only available in
* perf revision 2.
gen_perf_init_context(perf_ctx, perf_cfg, brw, brw->bufmgr, devinfo,
brw->hw_ctx, brw->screen->fd);
- gen_perf_init_metrics(perf_cfg, devinfo, brw->screen->fd);
+ gen_perf_init_metrics(perf_cfg, devinfo, brw->screen->fd,
+ true /* pipeline stats */);
return perf_cfg->n_queries;
}