def schemaToSimplifiedAndSearchSpace( self, longName: str, name: str, schema: JsonSchema ) -> Tuple[Optional[JsonSchema], Optional[SearchSpace]]: relevantFields = findRelevantFields(schema) if relevantFields: schema = narrowToGivenRelevantFields(schema, relevantFields) if has_operator(schema): atomize_schema_enumerations(schema) simplified_schema = simplify(schema, True) # from .. import pretty_print # print(f"SIMPLIFIED_{longName}: {pretty_print.to_string(simplified_schema)}") filtered_schema: Optional[JsonSchema] = filterForOptimizer( simplified_schema) # print(f'SIMPLIFIED_{longName}: {pretty_print.to_string(filtered_schema)}') if logger.isEnabledFor(logging.WARNING): op_warnings: List[str] = [] check_operators_schema(filtered_schema, op_warnings) if op_warnings: for w in op_warnings: logger.warning(w) return ( filtered_schema, self.schemaToSearchSpaceHelper( longName, filtered_schema, relevantFields, pgo_freqs=pgo_lookup(self.pgo, name), sub_space=False, ), )
def schemaToSimplifiedAndSearchSpace( longName: str, name: str, schema: Schema, pgo: Optional[PGO] = None) -> Tuple[Schema, Optional[SearchSpace]]: relevantFields = findRelevantFields(schema) if relevantFields: schema = narrowToGivenRelevantFields(schema, relevantFields) simplified_schema = simplify(schema, True) # from . import helpers # helpers.print_yaml('SIMPLIFIED_' + longName, simplified_schema) filtered_schema = filterForOptimizer(simplified_schema) # helpers.print_yaml('FILTERED_' + longName, filtered_schema) return (filtered_schema, schemaToSearchSpaceHelper(longName, filtered_schema, relevantFields, pgo_freqs=pgo_lookup(pgo, name)))