Prompt48 commited on
Commit
fbcc1c2
·
verified ·
1 Parent(s): 013d95f

Upload edit\Qwen3-TTS-test\.venv\Lib\site-packages\torch\mps\profiler.py with huggingface_hub

Browse files
edit//Qwen3-TTS-test//.venv//Lib//site-packages//torch//mps//profiler.py ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # mypy: allow-untyped-defs
2
+ import contextlib
3
+
4
+ import torch
5
+
6
+
7
+ __all__ = ["start", "stop", "profile"]
8
+
9
+
10
+ def start(mode: str = "interval", wait_until_completed: bool = False) -> None:
11
+ r"""Start OS Signpost tracing from MPS backend.
12
+
13
+ The generated OS Signposts could be recorded and viewed in
14
+ XCode Instruments Logging tool.
15
+
16
+ Args:
17
+ mode(str): OS Signpost tracing mode could be "interval", "event",
18
+ or both "interval,event".
19
+ The interval mode traces the duration of execution of the operations,
20
+ whereas event mode marks the completion of executions.
21
+ See document `Recording Performance Data`_ for more info.
22
+ wait_until_completed(bool): Waits until the MPS Stream complete
23
+ executing each encoded GPU operation. This helps generating single
24
+ dispatches on the trace's timeline.
25
+ Note that enabling this option would affect the performance negatively.
26
+
27
+ .. _Recording Performance Data:
28
+ https://developer.apple.com/documentation/os/logging/recording_performance_data
29
+ """
30
+ mode_normalized = mode.lower().replace(" ", "")
31
+ torch._C._mps_profilerStartTrace(mode_normalized, wait_until_completed)
32
+
33
+
34
+ def stop():
35
+ r"""Stops generating OS Signpost tracing from MPS backend."""
36
+ torch._C._mps_profilerStopTrace()
37
+
38
+
39
+ @contextlib.contextmanager
40
+ def profile(mode: str = "interval", wait_until_completed: bool = False):
41
+ r"""Context Manager to enabling generating OS Signpost tracing from MPS backend.
42
+
43
+ Args:
44
+ mode(str): OS Signpost tracing mode could be "interval", "event",
45
+ or both "interval,event".
46
+ The interval mode traces the duration of execution of the operations,
47
+ whereas event mode marks the completion of executions.
48
+ See document `Recording Performance Data`_ for more info.
49
+ wait_until_completed(bool): Waits until the MPS Stream complete
50
+ executing each encoded GPU operation. This helps generating single
51
+ dispatches on the trace's timeline.
52
+ Note that enabling this option would affect the performance negatively.
53
+
54
+ .. _Recording Performance Data:
55
+ https://developer.apple.com/documentation/os/logging/recording_performance_data
56
+ """
57
+ try:
58
+ start(mode, wait_until_completed)
59
+ yield
60
+ finally:
61
+ stop()