def generate_outputs(self, filename=''): filename = filename or 'Generated automagically' pach = PacH(filename) pach.dim = self.dim # For every benchmark, generate the output qhull = self.qhull_no_smt pach.output.get('times',{}).update(qhull.output.get('times',{})) pach.qhull = qhull pach.smt_matrix = False pach.smt_iter = False # Force initial complexity for effectiveness calculation pach.initial_complexity = self.no_smt_initial_complexity pach.generate_output_file() logger.info('Generated output for NO SMT simplification') qhull = self.qhull_smt_iter pach.output.get('times',{}).update(qhull.output.get('times',{})) pach.qhull = qhull pach.smt_matrix = False pach.smt_iter = True # Force initial complexity for effectiveness calculation pach.initial_complexity = self.iter_initial_complexity pach.generate_output_file() logger.info('Generated output for Iterative SMT simplification') qhull = self.qhull_smt_matrix pach.output.get('times',{}).update(qhull.output.get('times',{})) pach.qhull = qhull pach.smt_matrix = True pach.smt_iter = False # Force initial complexity for effectiveness calculation pach.initial_complexity = self.matrix_initial_complexity pach.generate_output_file() logger.info('Generated output for Matrix SMT simplification') return True
def generate_outputs(self, filename=""): filename = filename or "Generated automagically" pach = PacH(filename) pach.dim = self.dim # For every benchmark, generate the output qhull = self.qhull_no_smt pach.output.get("times", {}).update(qhull.output.get("times", {})) pach.qhull = qhull pach.smt_matrix = False pach.smt_iter = False pach.generate_output_file() logger.info("Generated output for NO SMT simplification") qhull = self.qhull_smt_iter pach.output.get("times", {}).update(qhull.output.get("times", {})) pach.qhull = qhull pach.smt_matrix = False pach.smt_iter = True pach.generate_output_file() logger.info("Generated output for Iterative SMT simplification") qhull = self.qhull_smt_matrix pach.output.get("times", {}).update(qhull.output.get("times", {})) pach.qhull = qhull pach.smt_matrix = True pach.smt_iter = False pach.generate_output_file() logger.info("Generated output for Matrix SMT simplification") return True
def generate_pnml(self, filename='', reversed_dictionary={}): filename = filename or 'Generated automagically comparator.py' pach = PacH(filename) pach.reversed_dictionary = reversed_dictionary pach.dim = self.dim def_name = pach.get_def_pnml_name() if def_name.endswith('.pnml'): def_name = def_name[:-5] # For every benchmark, generate a PNML for benchmark in ['no_smt', 'smt_iter', 'smt_matrix']: qhull = getattr(self,'qhull_'+benchmark) pach.qhull = qhull filename = def_name + '_' + benchmark + '.pnml' pach.generate_pnml(filename=filename) logger.info('Generated the PNML %s for %s', filename, benchmark) return True
def generate_pnml(self, filename="", reversed_dictionary={}): filename = filename or "Generated automagically comparator.py" pach = PacH(filename) pach.reversed_dictionary = reversed_dictionary pach.dim = self.dim def_name = pach.get_def_pnml_name() if def_name.endswith(".pnml"): def_name = def_name[:-5] # For every benchmark, generate a PNML for benchmark in ["no_smt", "smt_iter", "smt_matrix"]: qhull = getattr(self, "qhull_" + benchmark) pach.qhull = qhull filename = def_name + "_" + benchmark + ".pnml" pach.generate_pnml(filename=filename) logger.info("Generated the PNML %s for %s", filename, benchmark) return True