"Fossies" - the Fresh Open Source Software Archive

Member "mesa-20.1.8/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.h" (16 Sep 2020, 1462 Bytes) of package /linux/misc/mesa-20.1.8.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "nvc0_query_hw_metric.h" see the Fossies "Dox" file reference documentation.

    1 #ifndef __NVC0_QUERY_HW_METRIC_H__
    2 #define __NVC0_QUERY_HW_METRIC_H__
    3 
    4 #include "nvc0_query_hw.h"
    5 
    6 struct nvc0_hw_metric_query {
    7    struct nvc0_hw_query base;
    8    struct nvc0_hw_query *queries[8];
    9    unsigned num_queries;
   10 };
   11 
   12 static inline struct nvc0_hw_metric_query *
   13 nvc0_hw_metric_query(struct nvc0_hw_query *hq)
   14 {
   15    return (struct nvc0_hw_metric_query *)hq;
   16 }
   17 
   18 /*
   19  * Driver metrics queries:
   20  */
   21 #define NVC0_HW_METRIC_QUERY(i)   (PIPE_QUERY_DRIVER_SPECIFIC + 2048 + (i))
   22 #define NVC0_HW_METRIC_QUERY_LAST  NVC0_HW_METRIC_QUERY(NVC0_HW_METRIC_QUERY_COUNT - 1)
   23 enum nvc0_hw_metric_queries
   24 {
   25     NVC0_HW_METRIC_QUERY_ACHIEVED_OCCUPANCY = 0,
   26     NVC0_HW_METRIC_QUERY_BRANCH_EFFICIENCY,
   27     NVC0_HW_METRIC_QUERY_INST_ISSUED,
   28     NVC0_HW_METRIC_QUERY_INST_PER_WRAP,
   29     NVC0_HW_METRIC_QUERY_INST_REPLAY_OVERHEAD,
   30     NVC0_HW_METRIC_QUERY_ISSUED_IPC,
   31     NVC0_HW_METRIC_QUERY_ISSUE_SLOTS,
   32     NVC0_HW_METRIC_QUERY_ISSUE_SLOT_UTILIZATION,
   33     NVC0_HW_METRIC_QUERY_IPC,
   34     NVC0_HW_METRIC_QUERY_SHARED_REPLAY_OVERHEAD,
   35     NVC0_HW_METRIC_QUERY_WARP_EXECUTION_EFFICIENCY,
   36     NVC0_HW_METRIC_QUERY_WARP_NONPRED_EXECUTION_EFFICIENCY,
   37     NVC0_HW_METRIC_QUERY_COUNT
   38 };
   39 
   40 struct nvc0_hw_query *
   41 nvc0_hw_metric_create_query(struct nvc0_context *, unsigned);
   42 int
   43 nvc0_hw_metric_get_driver_query_info(struct nvc0_screen *, unsigned,
   44                                      struct pipe_driver_query_info *);
   45 unsigned
   46 nvc0_hw_metric_get_num_queries(struct nvc0_screen *);
   47 
   48 #endif