|
from enum import Enum |
|
from typing import Any, Dict, List, Literal, Optional, Tuple, Union |
|
from typing_extensions import TypeAlias |
|
|
|
from torch._C import device, dtype, layout |
|
|
|
|
|
|
|
class RecordScope(Enum): |
|
FUNCTION = ... |
|
BACKWARD_FUNCTION = ... |
|
TORCHSCRIPT_FUNCTION = ... |
|
KERNEL_FUNCTION_DTYPE = ... |
|
CUSTOM_CLASS = ... |
|
BUILD_FEATURE = ... |
|
LITE_INTERPRETER = ... |
|
USER_SCOPE = ... |
|
STATIC_RUNTIME_OP = ... |
|
STATIC_RUNTIME_MODEL = ... |
|
|
|
class ProfilerState(Enum): |
|
Disable = ... |
|
CPU = ... |
|
CUDA = ... |
|
NVTX = ... |
|
ITT = ... |
|
KINETO = ... |
|
KINETO_GPU_FALLBACK = ... |
|
KINETO_PRIVATEUSE1_FALLBACK = ... |
|
KINETO_PRIVATEUSE1 = ... |
|
|
|
class ActiveProfilerType(Enum): |
|
NONE = ... |
|
LEGACY = ... |
|
KINETO = ... |
|
NVTX = ... |
|
ITT = ... |
|
|
|
class ProfilerActivity(Enum): |
|
CPU = ... |
|
CUDA = ... |
|
XPU = ... |
|
MTIA = ... |
|
PrivateUse1 = ... |
|
|
|
class _EventType(Enum): |
|
TorchOp = ... |
|
Backend = ... |
|
Allocation = ... |
|
OutOfMemory = ... |
|
PyCall = ... |
|
PyCCall = ... |
|
Kineto = ... |
|
|
|
class _ExperimentalConfig: |
|
def __init__( |
|
self, |
|
profiler_metrics: List[str] = ..., |
|
profiler_measure_per_kernel: bool = ..., |
|
verbose: bool = ..., |
|
performance_events: List[str] = ..., |
|
enable_cuda_sync_events: bool = ..., |
|
) -> None: ... |
|
|
|
class ProfilerConfig: |
|
def __init__( |
|
self, |
|
state: ProfilerState, |
|
report_input_shapes: bool, |
|
profile_memory: bool, |
|
with_stack: bool, |
|
with_flops: bool, |
|
with_modules: bool, |
|
experimental_config: _ExperimentalConfig, |
|
) -> None: ... |
|
|
|
class _ProfilerEvent: |
|
start_tid: int |
|
start_time_ns: int |
|
children: List[_ProfilerEvent] |
|
|
|
|
|
extra_fields: Union[ |
|
_ExtraFields_TorchOp, |
|
_ExtraFields_Backend, |
|
_ExtraFields_Allocation, |
|
_ExtraFields_OutOfMemory, |
|
_ExtraFields_PyCall, |
|
_ExtraFields_PyCCall, |
|
_ExtraFields_Kineto, |
|
] |
|
|
|
@property |
|
def typed( |
|
self, |
|
) -> Union[ |
|
Tuple[Literal[_EventType.TorchOp], _ExtraFields_TorchOp], |
|
Tuple[Literal[_EventType.Backend], _ExtraFields_Backend], |
|
Tuple[Literal[_EventType.Allocation], _ExtraFields_Allocation], |
|
Tuple[Literal[_EventType.OutOfMemory], _ExtraFields_OutOfMemory], |
|
Tuple[Literal[_EventType.PyCall], _ExtraFields_PyCall], |
|
Tuple[Literal[_EventType.PyCCall], _ExtraFields_PyCCall], |
|
Tuple[Literal[_EventType.Kineto], _ExtraFields_Kineto], |
|
]: ... |
|
@property |
|
def name(self) -> str: ... |
|
@property |
|
def tag(self) -> _EventType: ... |
|
@property |
|
def id(self) -> int: ... |
|
@property |
|
def parent(self) -> Optional[_ProfilerEvent]: ... |
|
@property |
|
def correlation_id(self) -> int: ... |
|
@property |
|
def end_time_ns(self) -> int: ... |
|
@property |
|
def duration_time_ns(self) -> int: ... |
|
|
|
class _TensorMetadata: |
|
impl_ptr: Optional[int] |
|
storage_data_ptr: Optional[int] |
|
id: Optional[int] |
|
|
|
@property |
|
def allocation_id(self) -> Optional[int]: ... |
|
@property |
|
def layout(self) -> layout: ... |
|
@property |
|
def device(self) -> device: ... |
|
@property |
|
def dtype(self) -> dtype: ... |
|
@property |
|
def sizes(self) -> List[int]: ... |
|
@property |
|
def strides(self) -> List[int]: ... |
|
|
|
Scalar: TypeAlias = Union[int, float, bool, complex] |
|
Input: TypeAlias = Optional[Union[_TensorMetadata, List[_TensorMetadata], Scalar]] |
|
|
|
class _ExtraFields_TorchOp: |
|
name: str |
|
sequence_number: int |
|
allow_tf32_cublas: bool |
|
|
|
@property |
|
def inputs(self) -> List[Input]: ... |
|
@property |
|
def scope(self) -> RecordScope: ... |
|
|
|
class _ExtraFields_Backend: ... |
|
|
|
class _ExtraFields_Allocation: |
|
ptr: int |
|
id: Optional[int] |
|
alloc_size: int |
|
total_allocated: int |
|
total_reserved: int |
|
|
|
@property |
|
def allocation_id(self) -> Optional[int]: ... |
|
@property |
|
def device(self) -> device: ... |
|
|
|
class _ExtraFields_OutOfMemory: ... |
|
|
|
class _PyFrameState: |
|
line_number: int |
|
function_name: str |
|
|
|
@property |
|
def file_name(self) -> str: ... |
|
|
|
class _NNModuleInfo: |
|
@property |
|
def self_ptr(self) -> int: ... |
|
@property |
|
def cls_ptr(self) -> int: ... |
|
@property |
|
def cls_name(self) -> str: ... |
|
@property |
|
def parameters( |
|
self, |
|
) -> List[Tuple[str, _TensorMetadata, Optional[_TensorMetadata]]]: ... |
|
|
|
class _OptimizerInfo: |
|
@property |
|
def parameters( |
|
self, |
|
) -> List[ |
|
Tuple[ |
|
|
|
_TensorMetadata, |
|
|
|
|
|
Optional[_TensorMetadata], |
|
|
|
|
|
List[Tuple[str, _TensorMetadata]], |
|
] |
|
]: ... |
|
|
|
class _ExtraFields_PyCCall: |
|
@property |
|
def caller(self) -> _PyFrameState: ... |
|
|
|
class _ExtraFields_PyCall: |
|
@property |
|
def callsite(self) -> _PyFrameState: ... |
|
@property |
|
def caller(self) -> _PyFrameState: ... |
|
@property |
|
def module(self) -> Optional[_NNModuleInfo]: ... |
|
@property |
|
def optimizer(self) -> Optional[_OptimizerInfo]: ... |
|
|
|
class _ExtraFields_Kineto: ... |
|
|
|
def _add_execution_trace_observer(output_file_path: str) -> bool: ... |
|
def _remove_execution_trace_observer() -> None: ... |
|
def _enable_execution_trace_observer() -> None: ... |
|
def _disable_execution_trace_observer() -> None: ... |
|
def _set_record_concrete_inputs_enabled_val(val: bool) -> None: ... |
|
def _set_fwd_bwd_enabled_val(val: bool) -> None: ... |
|
def _set_cuda_sync_enabled_val(val: bool) -> None: ... |
|
|
|
class CapturedTraceback: ... |
|
|
|
def gather_traceback(python: bool, script: bool, cpp: bool) -> CapturedTraceback: ... |
|
|
|
|
|
def symbolize_tracebacks( |
|
to_symbolize: List[CapturedTraceback], |
|
) -> List[List[Dict[str, str]]]: ... |
|
|
|
class _RecordFunctionFast: |
|
def __init__( |
|
self, |
|
name: str, |
|
input_values: Optional[Union[list, tuple]] = None, |
|
keyword_values: Optional[dict] = None, |
|
) -> None: ... |
|
def __enter__(self) -> None: ... |
|
def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any) -> None: ... |
|
|