[724] | 1 | |
---|
| 2 | individual_metrics = [ 'req_trig_update', 'local_update', 'remote_update', 'update_cost', 'req_trig_m_inv', 'local_m_inv', 'remote_m_inv', 'm_inv_cost', 'broadcast', 'total_update', 'total_m_inv' ] |
---|
| 3 | grouped_metrics = [ 'update_cost', 'm_inv_cost' ] |
---|
| 4 | stacked_metrics = [ 'nonwrite_broadcast', 'write_broadcast', 'local_m_inv', 'remote_m_inv', 'local_update', 'remote_update' ] |
---|
| 5 | |
---|
| 6 | m_app_name = {} |
---|
| 7 | m_app_name['mandel'] = "Mandelbrot" |
---|
| 8 | m_app_name['filter'] = "Filter" |
---|
| 9 | m_app_name['filt_ga'] = "Filter (opt.)" |
---|
| 10 | m_app_name['histogram'] = "Histogram" |
---|
| 11 | m_app_name['kmeans'] = "Kmeans" |
---|
| 12 | m_app_name['barnes'] = "Barnes" |
---|
| 13 | m_app_name['fmm'] = "FMM" |
---|
| 14 | m_app_name['ocean'] = "Ocean" |
---|
| 15 | m_app_name['raytrace'] = "Raytrace" |
---|
| 16 | m_app_name['radiosity'] = "Radiosity" |
---|
| 17 | m_app_name['waters'] = "Water Sp." |
---|
| 18 | m_app_name['watern'] = "Water Nsq." |
---|
| 19 | m_app_name['cholesky'] = "Cholesky" |
---|
| 20 | m_app_name['lu'] = "LU" |
---|
| 21 | m_app_name['fft'] = "FFT" |
---|
| 22 | m_app_name['radix'] = "Radix" |
---|
| 23 | m_app_name['fft_ga'] = "FFT" |
---|
| 24 | m_app_name['radix_ga'] = "Radix" |
---|
| 25 | |
---|
| 26 | m_metric_id = {} |
---|
| 27 | m_metric_tag = {} |
---|
| 28 | m_metric_tag['counter_reset'] = "[000]" |
---|
| 29 | m_metric_tag['ncycles'] = "[001]" |
---|
| 30 | m_metric_tag['local_read'] = "[002]" |
---|
| 31 | m_metric_tag['remote_read'] = "[003]" |
---|
| 32 | m_metric_tag['read_cost'] = "[004]" |
---|
| 33 | m_metric_tag['local_write'] = "[005]" |
---|
| 34 | m_metric_tag['remote_write'] = "[006]" |
---|
| 35 | m_metric_tag['write_flits_local'] = "[007]" |
---|
| 36 | m_metric_tag['write_flits_remote'] = "[008]" |
---|
| 37 | m_metric_tag['write_cost'] = "[009]" |
---|
| 38 | m_metric_tag['local_ll'] = "[010]" |
---|
| 39 | m_metric_tag['remote_ll'] = "[011]" |
---|
| 40 | m_metric_tag['ll_cost'] = "[012]" |
---|
| 41 | m_metric_tag['local_sc'] = "[013]" |
---|
| 42 | m_metric_tag['remote_sc'] = "[014]" |
---|
| 43 | m_metric_tag['sc_cost'] = "[015]" |
---|
| 44 | m_metric_tag['local_cas'] = "[016]" |
---|
| 45 | m_metric_tag['remote_cas'] = "[017]" |
---|
| 46 | m_metric_tag['cas_cost'] = "[018]" |
---|
| 47 | m_metric_tag['req_trig_update'] = "[019]" |
---|
| 48 | m_metric_tag['local_update'] = "[020]" |
---|
| 49 | m_metric_tag['remote_update'] = "[021]" |
---|
| 50 | m_metric_tag['update_cost'] = "[022]" |
---|
| 51 | m_metric_tag['req_trig_m_inv'] = "[023]" |
---|
| 52 | m_metric_tag['local_m_inv'] = "[024]" |
---|
| 53 | m_metric_tag['remote_m_inv'] = "[025]" |
---|
| 54 | m_metric_tag['m_inv_cost'] = "[026]" |
---|
| 55 | m_metric_tag['broadcast'] = "[027]" |
---|
| 56 | m_metric_tag['local_cleanup'] = "[028]" |
---|
| 57 | m_metric_tag['remote_cleanup'] = "[029]" |
---|
| 58 | m_metric_tag['cleanup_cost'] = "[030]" |
---|
| 59 | m_metric_tag['nb_read_miss'] = "[031]" |
---|
| 60 | m_metric_tag['write_miss'] = "[032]" |
---|
| 61 | m_metric_tag['write_dirty'] = "[033]" |
---|
| 62 | m_metric_tag['read_hit_trt'] = "[034]" # Reads blocked by a hit in the TRT |
---|
| 63 | m_metric_tag['trans_full_trt'] = "[035]" # Transactions blocked because the TRT is full |
---|
| 64 | m_metric_tag['put'] = "[036]" |
---|
| 65 | m_metric_tag['get'] = "[037]" |
---|
| 66 | m_metric_tag['write_broadcast'] = "[038]" |
---|
| 67 | |
---|
| 68 | m_metric_tag['total_read'] = "[040]" |
---|
| 69 | m_metric_tag['total_write'] = "[041]" |
---|
| 70 | m_metric_tag['total_ll'] = "[042]" |
---|
| 71 | m_metric_tag['total_sc'] = "[043]" |
---|
| 72 | m_metric_tag['total_cas'] = "[044]" |
---|
| 73 | m_metric_tag['total_update'] = "[045]" |
---|
| 74 | m_metric_tag['total_m_inv'] = "[046]" |
---|
| 75 | m_metric_tag['total_cleanup'] = "[047]" |
---|
| 76 | m_metric_tag['total_direct'] = "[048]" |
---|
| 77 | |
---|
| 78 | m_metric_tag['nonwrite_broadcast'] = "[050]" |
---|
| 79 | m_metric_tag['broadcast_cost'] = "[051]" |
---|
| 80 | m_metric_tag['direct_cost'] = "[052]" |
---|
| 81 | m_metric_tag['total_stacked'] = "|060]" |
---|
| 82 | |
---|
| 83 | all_metrics = m_metric_tag.keys() |
---|
| 84 | all_tags = m_metric_tag.values() |
---|
| 85 | |
---|
| 86 | m_metric_name = {} |
---|
| 87 | m_metric_name['counter_reset'] = "Counters reset at cycle" |
---|
| 88 | m_metric_name['ncycles'] = "Number of Cycles" |
---|
| 89 | m_metric_name['local_read'] = "Number of Local Reads (Miss in L1)" |
---|
| 90 | m_metric_name['remote_read'] = "Number of Remote Reads (Miss in L1)" |
---|
| 91 | m_metric_name['read_cost'] = "Read Cost" |
---|
| 92 | m_metric_name['local_write'] = "Number of Local Writes" |
---|
| 93 | m_metric_name['remote_write'] = "Number of Remote Writes" |
---|
| 94 | m_metric_name['write_flits_local'] = "Number of Local Write Flits" |
---|
| 95 | m_metric_name['write_flits_remote'] = "Number of Remote Write Flits" |
---|
| 96 | m_metric_name['write_cost'] = "Write Cost" |
---|
| 97 | m_metric_name['local_ll'] = "Number of Local LL" |
---|
| 98 | m_metric_name['remote_ll'] = "Number of Remote LL" |
---|
| 99 | m_metric_name['ll_cost'] = "LL Cost" |
---|
| 100 | m_metric_name['local_sc'] = "Number of Local SC" |
---|
| 101 | m_metric_name['remote_sc'] = "Number of Remote SC" |
---|
| 102 | m_metric_name['sc_cost'] = "SC Cost" |
---|
| 103 | m_metric_name['local_cas'] = "Number of Local CAS" |
---|
| 104 | m_metric_name['remote_cas'] = "Number of Remote CAS" |
---|
| 105 | m_metric_name['cas_cost'] = "CAS Cost" |
---|
| 106 | m_metric_name['req_trig_update'] = "Number of Requests Triggering an Update" |
---|
| 107 | m_metric_name['local_update'] = "Number of Local Updates" |
---|
| 108 | m_metric_name['remote_update'] = "Number of Remote Updates" |
---|
| 109 | m_metric_name['update_cost'] = "Update Cost" |
---|
| 110 | m_metric_name['req_trig_m_inv'] = "Number of Requests Triggering a M.inv" |
---|
| 111 | m_metric_name['local_m_inv'] = "Number of Local Multi Inval" |
---|
| 112 | m_metric_name['remote_m_inv'] = "Number of Remote Multi Inval" |
---|
| 113 | m_metric_name['m_inv_cost'] = "Multi Inval Cost" |
---|
| 114 | m_metric_name['broadcast'] = "Number of Broadcasts" |
---|
| 115 | m_metric_name['broadcast'] = "Total Number of Broadcasts" |
---|
| 116 | m_metric_name['local_cleanup'] = "Number of Local Cleanups" |
---|
| 117 | m_metric_name['remote_cleanup'] = "Number of Remote Cleanups" |
---|
| 118 | m_metric_name['cleanup_cost'] = "Cleanup Cost" |
---|
| 119 | m_metric_name['nb_read_miss'] = "Number of Read Miss (in L2)" |
---|
| 120 | m_metric_name['write_miss'] = "Number of Write Miss (in L2)" |
---|
| 121 | m_metric_name['write_dirty'] = "Number of Write Dirty (from L2 to Memory)" |
---|
| 122 | m_metric_name['read_hit_trt'] = "Number of Reads Blocked by a Hit in TRT" # Reads blocked by a hit in the TRT |
---|
| 123 | m_metric_name['trans_full_trt'] = "Number of Transactions Blocked because the TRT is Full" # Transactions blocked because the TRT is full |
---|
| 124 | m_metric_name['put'] = "Number of PUT to Memory" |
---|
| 125 | m_metric_name['get'] = "Number of GET from Memory" |
---|
| 126 | m_metric_name['write_broadcast'] = "Number of Broadcasts Trig. by Writes" |
---|
| 127 | |
---|
| 128 | m_metric_name['total_read'] = "Total Number of Reads" |
---|
| 129 | m_metric_name['total_write'] = "Total Number of Writes" |
---|
| 130 | m_metric_name['total_ll'] = "Total Number of LL" |
---|
| 131 | m_metric_name['total_sc'] = "Total Number of SC" |
---|
| 132 | m_metric_name['total_cas'] = "Total Number of CAS" |
---|
| 133 | m_metric_name['total_update'] = "Total Number of Updates" |
---|
| 134 | m_metric_name['total_m_inv'] = "Total Number of Multi Inval" |
---|
| 135 | m_metric_name['total_cleanup'] = "Total Number of Cleanups" |
---|
| 136 | m_metric_name['total_direct'] = "Total Number of Direct Requests" |
---|
| 137 | m_metric_name['nonwrite_broadcast'] = "Number of Broadcasts not Trig. by Writes" |
---|
| 138 | m_metric_name['broadcast_cost'] = "Broadcast Cost" |
---|
| 139 | m_metric_name['direct_cost'] = "Direct Requests Cost" |
---|
| 140 | m_metric_name['total_stacked'] = "??" # Normalization factor |
---|
| 141 | |
---|
| 142 | |
---|
| 143 | |
---|
| 144 | m_metric_norm = {} # "N" (None), P (#procs), C (#cycles), W (#writes), R (#reads), D (#direct req -- R ou W), n (value with n proc(s)) |
---|
| 145 | m_metric_norm['req_trig_update'] = "C" |
---|
| 146 | m_metric_norm['local_update'] = "C" |
---|
| 147 | m_metric_norm['remote_update'] = "C" |
---|
| 148 | m_metric_norm['update_cost'] = "C" |
---|
| 149 | m_metric_norm['req_trig_m_inv'] = "C" |
---|
| 150 | m_metric_norm['local_m_inv'] = "C" |
---|
| 151 | m_metric_norm['remote_m_inv'] = "C" |
---|
| 152 | m_metric_norm['m_inv_cost'] = "C" |
---|
| 153 | m_metric_norm['broadcast'] = "C" |
---|
| 154 | m_metric_norm['total_update'] = "C" |
---|
| 155 | m_metric_norm['total_m_inv'] = "C" |
---|
| 156 | |
---|
| 157 | m_norm_factor_name = {} |
---|
| 158 | m_norm_factor_name['N'] = "" |
---|
| 159 | m_norm_factor_name['P'] = "Normalized w.r.t.\\nthe Number of Processors" |
---|
| 160 | m_norm_factor_name['C'] = "Normalized w.r.t.\\nthe Number of Cycles (x 1000)" |
---|
| 161 | m_norm_factor_name['W'] = "Normalized w.r.t.\\nthe Number of Writes" |
---|
| 162 | m_norm_factor_name['R'] = "Normalized w.r.t.\\nthe Number of Reads" |
---|
| 163 | m_norm_factor_name['D'] = "Normalized w.r.t.\\nthe Number of Direct Requests" |
---|
| 164 | m_norm_factor_name['1'] = "Normalized w.r.t.\\nthe Value on 1 Processor" |
---|
| 165 | m_norm_factor_name['4'] = "Normalized w.r.t.\\nthe Value on 4 Processors" |
---|
| 166 | m_norm_factor_name['8'] = "Normalized w.r.t.\\nthe Value on 8 Processors" |
---|
| 167 | m_norm_factor_name['16'] = "Normalized w.r.t.\\nthe Value on 16 Processors" |
---|
| 168 | m_norm_factor_name['32'] = "Normalized w.r.t.\\nthe Value on 32 Processors" |
---|
| 169 | m_norm_factor_name['64'] = "Normalized w.r.t.\\nthe Value on 64 Processors" |
---|
| 170 | m_norm_factor_name['128'] = "Normalized w.r.t.\\nthe Value on 128 Processors" |
---|
| 171 | m_norm_factor_name['256'] = "Normalized w.r.t.\\nthe Value on 256 Processors" |
---|
| 172 | |
---|
| 173 | |
---|
| 174 | |
---|
| 175 | colors = [ "\"#008000\"", "\"#000080\"", "\"#BADC98\"", "\"#BA98DC\"", "\"#98DCBA\"", "\"#98BADC\"", "\"#BA9876\"", "\"#BA7698\"", "\"#98BA76\"", "\"#9876BA\"", "\"#76BA98\"", "\"#7698BA\"" ] |
---|
| 176 | |
---|
| 177 | |
---|