1 #ifndef PAPI_COMBBLAS_GLOBALS_
2 #define PAPI_COMBBLAS_GLOBALS_
3 
4 #include <papi.h>
5 #include <string>
6 #include <vector>
7 
8 
9 char spmv_errorstring[PAPI_MAX_STR_LEN+1];
10 std::string bfs_papi_labels = {"SpMV", "fringe_updt", "parents_updt"};
11 int num_bfs_papi_labels = 3;
12 
13 
14 enum bfs_papi_enum { SpMV, fringe_updt, parents_updt };
15 
16 
17 std::string spmv_papi_labels = {"Fan-Out", "LocalSpMV", "Fan-In", "Merge"};
18 
19 std::string combblas_event_names [] = {"PAPI_TOT_INS", "PAPI_L1_TCM", "PAPI_L2_TCM", "PAPI_L3_TCM"};
20 int combblas_papi_events [] = {PAPI_TOT_INS, PAPI_L1_TCM, PAPI_L2_TCM, PAPI_L3_TCM};
21 int combblas_papi_num_events = 4;
22 
23 // outer index: SpMV iteration, middle index: papi_labels, inner index: papi events
24 // dimensions: <#iterations> <num_bfs_papi_labels> <combblas_papi_num_events+1>
25 std::vector< std::vector< std::vector<long long> > > bfs_counters;
26 std::vector< std::vector< std::vector<long long> > > spmv_counters;
27 
28 
29 
30 #endif
31