Lines Matching refs:Heuristics
5 # Script to analyze results of our branch prediction heuristics
26 # heuristics - coverage and hitrate. Coverage is number of executions
27 # of a given branch matched by the heuristics and hitrate is probability
30 # These values are useful to determine the quality of given heuristics.
45 # HEURISTICS BRANCHES (REL) HITRATE COVERAGE (REL)
61 # The heuristics called "first match" is a heuristics used by GCC branch
63 # the heuristics has very good covertage (69.05%). On the other hand,
64 # "opcode values nonequal (on trees)" heuristics has good hirate, but poor
101 def parse_and_modify(self, heuristics, write_def_file):
117 heuristic = [x for x in heuristics if x.name == p]
140 class Heuristics:
226 self.heuristics = {}
230 if not name in self.heuristics:
231 self.heuristics[name] = Summary(name)
233 s = self.heuristics[name]
240 s.edges.append(Heuristics(count, hits, fits))
247 return max([v.branches() for k, v in self.heuristics.items()])
250 return max([v.count() for k, v in self.heuristics.items()])
252 def print_group(self, sorting, group_name, heuristics, predict_def):
267 ('HEURISTICS', 'BRANCHES', '(REL)',
270 for h in sorted(heuristics, key = sorter):
274 heuristics = self.heuristics.values()
275 if len(heuristics) == 0:
276 print('No heuristics available')
282 predict_def.parse_and_modify(heuristics, args.write_def_file)
285 heuristics))
287 heuristics))
289 self.print_group(sorting, 'HEURISTICS', normal, predict_def)
321 if l.startswith(';;heuristics;'):