[diffusion] profiling: include per-denoising-step timings in perf-dump-path (#15397)
This commit is contained in:
@@ -71,6 +71,7 @@ def maybe_dump_performance(args: argparse.Namespace, server_args, prompt: str, r
|
|||||||
|
|
||||||
timings = RequestTimings(request_id=timings_dict.get("request_id"))
|
timings = RequestTimings(request_id=timings_dict.get("request_id"))
|
||||||
timings.stages = timings_dict.get("stages", {})
|
timings.stages = timings_dict.get("stages", {})
|
||||||
|
timings.steps = timings_dict.get("steps", [])
|
||||||
timings.total_duration_ms = timings_dict.get("total_duration_ms", 0)
|
timings.total_duration_ms = timings_dict.get("total_duration_ms", 0)
|
||||||
|
|
||||||
PerformanceLogger.dump_benchmark_report(
|
PerformanceLogger.dump_benchmark_report(
|
||||||
|
|||||||
@@ -207,6 +207,12 @@ class PerformanceLogger:
|
|||||||
for name, duration_ms in timings.stages.items()
|
for name, duration_ms in timings.stages.items()
|
||||||
]
|
]
|
||||||
|
|
||||||
|
denoise_steps_ms = list(timings.steps)
|
||||||
|
denoise_steps = [
|
||||||
|
{"index": idx, "duration_ms": duration_ms}
|
||||||
|
for idx, duration_ms in enumerate(denoise_steps_ms)
|
||||||
|
]
|
||||||
|
|
||||||
report = {
|
report = {
|
||||||
"timestamp": datetime.now(UTC).isoformat(),
|
"timestamp": datetime.now(UTC).isoformat(),
|
||||||
"request_id": timings.request_id,
|
"request_id": timings.request_id,
|
||||||
@@ -214,6 +220,8 @@ class PerformanceLogger:
|
|||||||
"tag": tag,
|
"tag": tag,
|
||||||
"total_duration_ms": timings.total_duration_ms,
|
"total_duration_ms": timings.total_duration_ms,
|
||||||
"steps": formatted_steps,
|
"steps": formatted_steps,
|
||||||
|
"denoise_steps_ms": denoise_steps_ms,
|
||||||
|
"denoise_steps": denoise_steps,
|
||||||
"meta": meta or {},
|
"meta": meta or {},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user