File tree Expand file tree Collapse file tree 5 files changed +36
-7
lines changed Expand file tree Collapse file tree 5 files changed +36
-7
lines changed Original file line number Diff line number Diff line change @@ -17,6 +17,7 @@ runtime.python_library(
1717 name = "backend",
1818 srcs = glob([
1919 "compiler/*.py",
20+ "logging.py",
2021 ]),
2122 visibility = [
2223 "@EXECUTORCH_CLIENTS",
@@ -33,6 +34,7 @@ runtime.python_library(
3334 name = "partitioner",
3435 srcs = glob([
3536 "partition/*.py",
37+ "logging.py",
3638 ]),
3739 visibility = [
3840 "@EXECUTORCH_CLIENTS",
Original file line number Diff line number Diff line change 1616
1717import coremltools as ct
1818import coremltools .optimize as cto
19-
2019from executorch .backends .apple .coreml import executorchcoreml
20+ from executorch .backends .apple .coreml .logging import get_coreml_log_level
2121from executorch .exir .backend .backend_details import (
2222 BackendDetails ,
2323 ExportedProgram ,
2424 PreprocessResult ,
2525)
2626from executorch .exir .backend .compile_spec_schema import CompileSpec
2727
28- logger = logging .getLogger (__name__ )
29- logger .setLevel (logging .WARNING )
30-
3128from executorch .backends .apple .coreml .compiler .torch_ops import * # noqa: F401, F403
3229
30+ logger = logging .getLogger (__name__ )
31+ logger .setLevel (get_coreml_log_level (default_level = logging .WARNING ))
32+
3333
3434class COMPILE_SPEC_KEYS (Enum ):
3535 COMPUTE_UNITS = "compute_units"
@@ -409,6 +409,7 @@ def preprocess(
409409 edge_program : ExportedProgram ,
410410 compile_specs : List [CompileSpec ],
411411 ) -> PreprocessResult :
412+ logger .info (f"Edge program: { edge_program } " )
412413 model_type : CoreMLBackend .MODEL_TYPE = (
413414 CoreMLBackend .model_type_from_compile_specs (
414415 compile_specs ,
Original file line number Diff line number Diff line change 99# the op to the coremltools library.
1010
1111import torch as _torch
12- from coremltools import _logger as logger
12+ from coremltools import _logger
1313from coremltools .converters .mil .frontend import _utils
1414from coremltools .converters .mil .frontend .torch .ops import (
1515 _get_inputs ,
@@ -111,7 +111,7 @@ def dequantize_affine(context, node):
111111 out_np_dtype = None
112112 if len (inputs ) > 7 :
113113 out_np_dtype = NUM_TO_NUMPY_DTYPE [inputs [7 ].val ]
114- logger .warning (
114+ _logger .warning (
115115 f"Core ML ignores output_dtype { out_np_dtype } on torchao.dequantize_affine and instead uses the native precision."
116116 )
117117
Original file line number Diff line number Diff line change 1+ # Copyright © 2023 Apple Inc. All rights reserved.
2+ #
3+ # Please refer to the license found in the LICENSE file in the root directory of the source tree.
4+
5+ import logging
6+ import os
7+ from typing import Optional
8+
9+
10+ def get_coreml_log_level (default_level : int ) -> Optional [str ]:
11+ level_str = os .environ .get ("ET_COREML_LOG_LEVEL" , "" ).upper ()
12+ if level_str == "" :
13+ return default_level
14+
15+ level_map = {
16+ "DEBUG" : logging .DEBUG ,
17+ "INFO" : logging .INFO ,
18+ "WARNING" : logging .WARNING ,
19+ "ERROR" : logging .ERROR ,
20+ "CRITICAL" : logging .CRITICAL ,
21+ }
22+ if level_str not in level_map :
23+ raise ValueError (f"Invalid ET_COREML_LOG_LEVEL: { level_str } " )
24+ return level_map [level_str ]
Original file line number Diff line number Diff line change 1010import torch
1111
1212from executorch .backends .apple .coreml .compiler import CoreMLBackend
13+
14+ from executorch .backends .apple .coreml .logging import get_coreml_log_level
1315from executorch .exir .backend .compile_spec_schema import CompileSpec
1416
1517from executorch .exir .backend .partitioner import (
2325from torch .fx .passes .operator_support import OperatorSupportBase
2426
2527logger = logging .getLogger (__name__ )
26- logger .setLevel (logging .INFO )
28+ logger .setLevel (get_coreml_log_level ( default_level = logging .INFO ) )
2729
2830
2931def _is_view_op (op : torch ._ops .OpOverload ) -> bool :
You can’t perform that action at this time.
0 commit comments