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