/usr/local/lib64/python3.6/site-packages/torch/cuda
NameSizeModeActions
amp/-0755rm
__pycache__/-0755rm
comm.py2930644editdlrm
error.py00644editdlrm
graphs.py188350644editdlrm
memory.py225990644editdlrm
nccl.py39420644editdlrm
nvtx.py15080644editdlrm
profiler.py12210644editdlrm
random.py52230644editdlrm
sparse.py670644editdlrm
streams.py80930644editdlrm
_utils.py18450644editdlrm
__init__.py243700644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/torch/cuda/profiler.py (1221B)
import tempfile import contextlib from . import cudart, check_error DEFAULT_FLAGS = [ "gpustarttimestamp", "gpuendtimestamp", "gridsize3d", "threadblocksize", "streamid", "enableonstart 0", "conckerneltrace", ] def init(output_file, flags=None, output_mode='key_value'): rt = cudart() if not hasattr(rt, 'cudaOutputMode'): raise AssertionError("HIP does not support profiler initialization!") flags = DEFAULT_FLAGS if flags is None else flags if output_mode == 'key_value': output_mode_enum = rt.cudaOutputMode.KeyValuePair elif output_mode == 'csv': output_mode_enum = rt.cudaOutputMode.CSV else: raise RuntimeError("supported CUDA profiler output modes are: key_value and csv") with tempfile.NamedTemporaryFile(delete=True) as f: f.write(b'\n'.join(f.encode('ascii') for f in flags)) f.flush() check_error(rt.cudaProfilerInitialize(f.name, output_file, output_mode_enum)) def start(): check_error(cudart().cudaProfilerStart()) def stop(): check_error(cudart().cudaProfilerStop()) @contextlib.contextmanager def profile(): try: start() yield finally: stop()