mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 06:48:06 +02:00
nvc0: expose a group of performance metrics on Fermi
This allows to monitor those performance metrics through GL_AMD_performance_monitor. Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
This commit is contained in:
parent
6166a8e369
commit
0260620ab3
3 changed files with 16 additions and 3 deletions
|
|
@ -28,6 +28,7 @@
|
|||
#include "nvc0/nvc0_query.h"
|
||||
#include "nvc0/nvc0_query_sw.h"
|
||||
#include "nvc0/nvc0_query_hw.h"
|
||||
#include "nvc0/nvc0_query_hw_metric.h"
|
||||
#include "nvc0/nvc0_query_hw_sm.h"
|
||||
|
||||
static struct pipe_query *
|
||||
|
|
@ -188,7 +189,7 @@ nvc0_screen_get_driver_query_group_info(struct pipe_screen *pscreen,
|
|||
count++;
|
||||
} else
|
||||
if (screen->base.class_3d < NVE4_3D_CLASS) {
|
||||
count++;
|
||||
count += 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -218,6 +219,17 @@ nvc0_screen_get_driver_query_group_info(struct pipe_screen *pscreen,
|
|||
return 1;
|
||||
}
|
||||
}
|
||||
} else
|
||||
if (id == NVC0_HW_METRIC_QUERY_GROUP) {
|
||||
if (screen->compute) {
|
||||
if (screen->base.class_3d < NVE4_3D_CLASS) {
|
||||
info->name = "Performance metrics";
|
||||
info->type = PIPE_DRIVER_QUERY_GROUP_TYPE_GPU;
|
||||
info->max_active_queries = 1;
|
||||
info->num_queries = NVC0_HW_METRIC_QUERY_COUNT;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
#ifdef NOUVEAU_ENABLE_DRIVER_STATISTICS
|
||||
else if (id == NVC0_SW_QUERY_DRV_STAT_GROUP) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,8 @@ nvc0_query(struct pipe_query *pipe)
|
|||
* Driver queries groups:
|
||||
*/
|
||||
#define NVC0_HW_SM_QUERY_GROUP 0
|
||||
#define NVC0_SW_QUERY_DRV_STAT_GROUP 1
|
||||
#define NVC0_HW_METRIC_QUERY_GROUP 1
|
||||
#define NVC0_SW_QUERY_DRV_STAT_GROUP 2
|
||||
|
||||
void nvc0_init_query_functions(struct nvc0_context *);
|
||||
|
||||
|
|
|
|||
|
|
@ -431,7 +431,7 @@ nvc0_hw_metric_get_driver_query_info(struct nvc0_screen *screen, unsigned id,
|
|||
id = nvc0_hw_metric_get_next_query_id(queries, id);
|
||||
info->name = nvc0_hw_metric_names[id];
|
||||
info->query_type = NVC0_HW_METRIC_QUERY(id);
|
||||
info->group_id = -1;
|
||||
info->group_id = NVC0_HW_METRIC_QUERY_GROUP;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue