Skip to content

Commit e69b138

Browse files
authored
Telemetry for torch.compile() (#27803)
### Details: - Send telemetry if openvino is used from torch.compile(). ### Tickets: - CVS-134112
1 parent 90aacf2 commit e69b138

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed
+8-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
# Copyright (C) 2018-2024 Intel Corporation
22
# SPDX-License-Identifier: Apache-2.0
33

4+
import sys
45
from openvino.tools.ovc.convert import convert_model
5-
from openvino.tools.ovc.telemetry_utils import is_optimum, init_ovc_telemetry
6+
from openvino.tools.ovc.telemetry_utils import is_optimum, init_ovc_telemetry, is_torch_compile
67

78
import importlib.metadata as importlib_metadata
89

@@ -11,10 +12,15 @@
1112
except importlib_metadata.PackageNotFoundError:
1213
optimum_version = None
1314

14-
from openvino.runtime import get_version as get_rt_version # pylint: disable=no-name-in-module,import-error
15+
from openvino import get_version as get_rt_version # pylint: disable=no-name-in-module,import-error
1516
telemetry = init_ovc_telemetry('OpenVINO')
1617
telemetry.send_event("ov", "import", "general_import")
1718

1819
if is_optimum() and optimum_version is not None:
1920
telemetry = init_ovc_telemetry("Optimum Intel", optimum_version)
2021
telemetry.send_event("optimum", "import", "import_from_optimum,ov_version:{}".format(get_rt_version()))
22+
23+
if is_torch_compile() and 'torch' in sys.modules:
24+
torch_version = importlib_metadata.version("torch")
25+
telemetry = init_ovc_telemetry("torch.compile", torch_version)
26+
telemetry.send_event("torch.compile", "import", "Import from torch.compile(), ov_version: {}".format(get_rt_version()))

tools/ovc/openvino/tools/ovc/telemetry_utils.py

+6
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ def is_optimum():
2424
return True
2525
return False
2626

27+
def is_torch_compile():
28+
import traceback
29+
for line in traceback.format_stack():
30+
if os.path.join("torch", "_dynamo", "backends", "registry.py") in line:
31+
return True
32+
return False
2733

2834
def init_ovc_telemetry(app_name='OVC', app_version=None):
2935
app_version = app_version if app_version is not None else get_rt_version()

0 commit comments

Comments
 (0)