~mmach/netext73/mesa-haswell

« back to all changes in this revision

Viewing changes to src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.h

  • Committer: mmach
  • Date: 2022-09-22 19:56:13 UTC
  • Revision ID: netbit73@gmail.com-20220922195613-wtik9mmy20tmor0i
2022-09-22 21:17:09

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef __NVC0_QUERY_HW_SM_H__
2
 
#define __NVC0_QUERY_HW_SM_H__
3
 
 
4
 
#include "nvc0_query_hw.h"
5
 
 
6
 
struct nvc0_hw_sm_query {
7
 
   struct nvc0_hw_query base;
8
 
   uint8_t ctr[8];
9
 
};
10
 
 
11
 
static inline struct nvc0_hw_sm_query *
12
 
nvc0_hw_sm_query(struct nvc0_hw_query *hq)
13
 
{
14
 
   return (struct nvc0_hw_sm_query *)hq;
15
 
}
16
 
 
17
 
/*
18
 
 * Performance counter queries:
19
 
 */
20
 
#define NVC0_HW_SM_QUERY(i)    (PIPE_QUERY_DRIVER_SPECIFIC + (i))
21
 
#define NVC0_HW_SM_QUERY_LAST   NVC0_HW_SM_QUERY(NVC0_HW_SM_QUERY_COUNT - 1)
22
 
enum nvc0_hw_sm_queries
23
 
{
24
 
   NVC0_HW_SM_QUERY_ACTIVE_CTAS = 0,
25
 
   NVC0_HW_SM_QUERY_ACTIVE_CYCLES,
26
 
   NVC0_HW_SM_QUERY_ACTIVE_WARPS,
27
 
   NVC0_HW_SM_QUERY_ATOM_CAS_COUNT,
28
 
   NVC0_HW_SM_QUERY_ATOM_COUNT,
29
 
   NVC0_HW_SM_QUERY_BRANCH,
30
 
   NVC0_HW_SM_QUERY_DIVERGENT_BRANCH,
31
 
   NVC0_HW_SM_QUERY_GLD_REQUEST,
32
 
   NVC0_HW_SM_QUERY_GLD_MEM_DIV_REPLAY,
33
 
   NVC0_HW_SM_QUERY_GLOBAL_ATOM_CAS,
34
 
   NVC0_HW_SM_QUERY_GLOBAL_LD,
35
 
   NVC0_HW_SM_QUERY_GLOBAL_ST,
36
 
   NVC0_HW_SM_QUERY_GST_TRANSACTIONS,
37
 
   NVC0_HW_SM_QUERY_GST_MEM_DIV_REPLAY,
38
 
   NVC0_HW_SM_QUERY_GRED_COUNT,
39
 
   NVC0_HW_SM_QUERY_GST_REQUEST,
40
 
   NVC0_HW_SM_QUERY_INST_EXECUTED,
41
 
   NVC0_HW_SM_QUERY_INST_ISSUED,
42
 
   NVC0_HW_SM_QUERY_INST_ISSUED0,
43
 
   NVC0_HW_SM_QUERY_INST_ISSUED1,
44
 
   NVC0_HW_SM_QUERY_INST_ISSUED2,
45
 
   NVC0_HW_SM_QUERY_INST_ISSUED1_0,
46
 
   NVC0_HW_SM_QUERY_INST_ISSUED1_1,
47
 
   NVC0_HW_SM_QUERY_INST_ISSUED2_0,
48
 
   NVC0_HW_SM_QUERY_INST_ISSUED2_1,
49
 
   NVC0_HW_SM_QUERY_L1_GLD_HIT,
50
 
   NVC0_HW_SM_QUERY_L1_GLD_MISS,
51
 
   NVC0_HW_SM_QUERY_L1_GLD_TRANSACTIONS,
52
 
   NVC0_HW_SM_QUERY_L1_GST_TRANSACTIONS,
53
 
   NVC0_HW_SM_QUERY_L1_LOCAL_LD_HIT,
54
 
   NVC0_HW_SM_QUERY_L1_LOCAL_LD_MISS,
55
 
   NVC0_HW_SM_QUERY_L1_LOCAL_ST_HIT,
56
 
   NVC0_HW_SM_QUERY_L1_LOCAL_ST_MISS,
57
 
   NVC0_HW_SM_QUERY_L1_SHARED_LD_TRANSACTIONS,
58
 
   NVC0_HW_SM_QUERY_L1_SHARED_ST_TRANSACTIONS,
59
 
   NVC0_HW_SM_QUERY_LOCAL_LD,
60
 
   NVC0_HW_SM_QUERY_LOCAL_LD_TRANSACTIONS,
61
 
   NVC0_HW_SM_QUERY_LOCAL_ST,
62
 
   NVC0_HW_SM_QUERY_LOCAL_ST_TRANSACTIONS,
63
 
   NVC0_HW_SM_QUERY_NOT_PRED_OFF_INST_EXECUTED,
64
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_0,
65
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_1,
66
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_2,
67
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_3,
68
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_4,
69
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_5,
70
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_6,
71
 
   NVC0_HW_SM_QUERY_PROF_TRIGGER_7,
72
 
   NVC0_HW_SM_QUERY_SHARED_ATOM,
73
 
   NVC0_HW_SM_QUERY_SHARED_ATOM_CAS,
74
 
   NVC0_HW_SM_QUERY_SHARED_LD,
75
 
   NVC0_HW_SM_QUERY_SHARED_LD_BANK_CONFLICT,
76
 
   NVC0_HW_SM_QUERY_SHARED_LD_REPLAY,
77
 
   NVC0_HW_SM_QUERY_SHARED_LD_TRANSACTIONS,
78
 
   NVC0_HW_SM_QUERY_SHARED_ST,
79
 
   NVC0_HW_SM_QUERY_SHARED_ST_BANK_CONFLICT,
80
 
   NVC0_HW_SM_QUERY_SHARED_ST_REPLAY,
81
 
   NVC0_HW_SM_QUERY_SHARED_ST_TRANSACTIONS,
82
 
   NVC0_HW_SM_QUERY_SM_CTA_LAUNCHED,
83
 
   NVC0_HW_SM_QUERY_THREADS_LAUNCHED,
84
 
   NVC0_HW_SM_QUERY_TH_INST_EXECUTED,
85
 
   NVC0_HW_SM_QUERY_TH_INST_EXECUTED_0,
86
 
   NVC0_HW_SM_QUERY_TH_INST_EXECUTED_1,
87
 
   NVC0_HW_SM_QUERY_TH_INST_EXECUTED_2,
88
 
   NVC0_HW_SM_QUERY_TH_INST_EXECUTED_3,
89
 
   NVC0_HW_SM_QUERY_UNCACHED_GLD_TRANSACTIONS,
90
 
   NVC0_HW_SM_QUERY_WARPS_LAUNCHED,
91
 
   NVC0_HW_SM_QUERY_COUNT
92
 
};
93
 
 
94
 
struct nvc0_hw_query *
95
 
nvc0_hw_sm_create_query(struct nvc0_context *, unsigned);
96
 
int
97
 
nvc0_hw_sm_get_driver_query_info(struct nvc0_screen *, unsigned,
98
 
                                 struct pipe_driver_query_info *);
99
 
unsigned
100
 
nvc0_hw_sm_get_num_queries(struct nvc0_screen *);
101
 
 
102
 
#endif