stormlog.cpu_profiler
CPU-only memory profiler and tracker.
Classes
Lightweight CPU memory profiler mirroring the GPU API. |
|
|
Point-in-time CPU memory snapshot. |
|
CPU tracker offering a superset of the GPU tracker interface. |
|
Results from profiling a CPU function/context. |
- class stormlog.cpu_profiler.CPUMemorySnapshot(timestamp, rss, vms, cpu_percent)[source]
Bases:
objectPoint-in-time CPU memory snapshot.
- Parameters:
timestamp (float)
rss (int)
vms (int)
cpu_percent (float)
- timestamp: float
- rss: int
- vms: int
- cpu_percent: float
- class stormlog.cpu_profiler.CPUProfileResult(name, duration, snapshot_before, snapshot_after, peak_rss)[source]
Bases:
objectResults from profiling a CPU function/context.
- Parameters:
name (str)
duration (float)
snapshot_before (CPUMemorySnapshot)
snapshot_after (CPUMemorySnapshot)
peak_rss (int)
- name: str
- duration: float
- snapshot_before: CPUMemorySnapshot
- snapshot_after: CPUMemorySnapshot
- peak_rss: int
- class stormlog.cpu_profiler.CPUMemoryProfiler[source]
Bases:
objectLightweight CPU memory profiler mirroring the GPU API.
- class stormlog.cpu_profiler.CPUMemoryTracker(sampling_interval=0.5, max_events=10000, enable_alerts=True, job_id=None, rank=None, local_rank=None, world_size=None, telemetry_sink_config=None)[source]
Bases:
objectCPU tracker offering a superset of the GPU tracker interface.
- Parameters:
sampling_interval (float)
max_events (int)
enable_alerts (bool)
job_id (Optional[str])
rank (Optional[int])
local_rank (Optional[int])
world_size (Optional[int])
telemetry_sink_config (Optional[TelemetrySinkConfig])
- get_session_summary()[source]
- Return type:
SessionSummary | None
- enter_phase(name, *, metadata=None)[source]
Enter one structured CPU tracking phase.
- Parameters:
name (str)
metadata (Dict[str, Any] | None)
- Return type:
- phase(name, *, metadata=None)[source]
Context manager that emits structured CPU phase telemetry.
- Parameters:
name (str)
metadata (Dict[str, Any] | None)
- Return type:
Any
- get_events(event_type=None, last_n=None, since=None)[source]
Get tracking events with optional filtering.
- Parameters:
event_type (str | None) – Filter by event type
last_n (int | None) – Get last N events
since (float | None) – Get events since timestamp
- Returns:
List of filtered events
- Return type:
List[TrackingEvent]
- get_memory_timeline(interval=1.0)[source]
- Parameters:
interval (float)
- Return type:
Dict[str, List[float]]