diff options
author | Samuel Pitoiset <[email protected]> | 2015-12-02 23:52:07 +0100 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2015-12-05 19:23:34 +0100 |
commit | 9f6ff76fdc593859433032e0e867c5382fd112e8 (patch) | |
tree | 0d41c46d76baff7a0ac02b9204f419a767a5a8a8 /src/gallium | |
parent | 0afd8f7bd793eb111757a2921a392b2d129061c4 (diff) |
nvc0: expose a group of performance metrics for SM30 (Kepler)
This allows to monitor these performance metrics through
GL_AMD_performance_monitor.
Signed-off-by: Samuel Pitoiset <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/nouveau/nvc0/nvc0_query.c | 8 | ||||
-rw-r--r-- | src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c | 2 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query.c index d992b10a23c..3845d616c3d 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_query.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_query.c @@ -187,7 +187,7 @@ nvc0_screen_get_driver_query_group_info(struct pipe_screen *pscreen, if (screen->base.device->drm_version >= 0x01000101) { if (screen->compute) { if (screen->base.class_3d == NVE4_3D_CLASS) { - count++; + count += 2; } else if (screen->base.class_3d < NVE4_3D_CLASS) { count += 2; @@ -222,6 +222,12 @@ nvc0_screen_get_driver_query_group_info(struct pipe_screen *pscreen, } else if (id == NVC0_HW_METRIC_QUERY_GROUP) { if (screen->compute) { + if (screen->base.class_3d == NVE4_3D_CLASS) { + info->name = "Performance metrics"; + info->max_active_queries = 1; + info->num_queries = NVE4_HW_METRIC_QUERY_COUNT; + return 1; + } else if (screen->base.class_3d < NVE4_3D_CLASS) { info->name = "Performance metrics"; info->max_active_queries = 1; diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c index 756ba4e8185..12fb609b62a 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c @@ -587,7 +587,7 @@ nvc0_hw_metric_get_driver_query_info(struct nvc0_screen *screen, unsigned id, if (screen->base.class_3d == NVE4_3D_CLASS) { info->name = nve4_hw_metric_names[id]; info->query_type = NVE4_HW_METRIC_QUERY(id); - info->group_id = -1; + info->group_id = NVC0_HW_METRIC_QUERY_GROUP; return 1; } else if (class_3d < NVE4_3D_CLASS) { |