You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(profiler): require explicit local save_path; drop implicit ckpt-derived default
Per review: remove the non-obvious {ckpt_path}/profiler_traces default and the
silent cloud-URI -> ./profiler_traces fallback. The relative fallback would land
traces in the Ray runtime working dir under /tmp/ray, and the ckpt-derived
default was surprising. save_path is now a required, explicit local path,
validated fail-fast at startup (non-empty + not a cloud URI). Updated docs,
config defaults comment, and tests accordingly.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: docs/content/docs/configuration/config.mdx
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -276,7 +276,7 @@ policy:
276
276
torch_profiler_config: # torch.profiler-based training-loop profiler (see below)
277
277
enable: false
278
278
ranks: [0]
279
-
save_path: null #defaults to {ckpt_path}/profiler_traces
279
+
save_path: null #REQUIRED when enable=true; absolute local path
280
280
skip_first: 10# torch.profiler.schedule
281
281
wait: 0
282
282
warmup: 1
@@ -310,7 +310,7 @@ Which steps are recorded is controlled entirely by [`torch.profiler.schedule`](h
310
310
311
311
-`policy.torch_profiler_config.enable`: Master switch. When `false` (default), no profiler RPCs are dispatched and there is zero overhead.
312
312
-`policy.torch_profiler_config.ranks`: List of global ranks to profile (e.g. `[0]`). Add a mid-pipeline-stage rank to diagnose pipeline bubbles.
313
-
-`policy.torch_profiler_config.save_path`: Output directory for traces. Defaults to `{ckpt_path}/profiler_traces`.
313
+
-`policy.torch_profiler_config.save_path`: Output directory for traces. **Required** when `enable: true` (there is no implicit default). Use an absolute local path: Ray workers run from a `/tmp/ray/.../working_dir_files` runtime working dir, so a relative path would scatter traces there, and `torch.profiler` cannot write to cloud URIs (`s3://`/`gs://`) — both are rejected at startup.
314
314
-`policy.torch_profiler_config.{skip_first,wait,warmup,active,repeat}`: Passed directly to `torch.profiler.schedule`.
315
315
-`policy.torch_profiler_config.activities`: Subset of `["cpu", "cuda"]` to record.
316
316
-`policy.torch_profiler_config.{record_shapes,profile_memory,with_stack,with_flops,with_modules}`: Passed directly to `torch.profiler.profile`. `with_stack` and `record_shapes` add overhead; `profile_memory` is heavier still and off by default.
0 commit comments