This page is generated from cascade/models.py each time the docs build, so it matches the code. The web UI mirrors the same types in web/src/api/types.ts.
Types are Python annotations as written in the source. X | None means the field is always present and may be null. datetime is an ISO 8601 string in UTC. tuple[int, int, int] is a JSON array of three integers.
Why the trace failed. null unless state is failed.
created_at
datetime
When the first file of the trace landed.
updated_at
datetime
When the app last changed this trace.
model
str | None
metadata.jsonmodel, such as facebook/opt-125m.
layers
list[str]
metadata.jsonlayers. Empty if missing or not a list.
source_gpu
str | None
metadata.json "gpu".
trace_gpu_arch
str
metadata.json "trace_gpu_arch", default "sm_90".
suggested_sim_config
str | None
metadata.jsonsuggested_sim_config. The UI preselects it on the New run screen.
real_gpu_config
str | None
metadata.json: config of the GPU it was captured on. default null
sample_sim_configs
list[str]
metadata.json: preselected. default []
sample_set
str | None
metadata.json: traces compared side by side. default null
kernel_count
int
Traced kernels seen so far.
bytes
int
Bytes on disk under the trace dir.
has_real_timing
bool
True when the trace has real per-kernel timings (real_timing.json). The profiler does not write them yet.
has_step_timeline
bool
corrected_timeline.json + kernel_mapping.json are in the trace dir.
sample
bool
True for the sample trace that cascade serve seeds from samples/ (see Introduction), unless CASCADE_SAMPLES is false. It is ready but has no instruction traces, so it can't start a run.
How many sims are in each state. States with no sims are left out.
sample
bool
True for the sample run seeded with the sample trace. Its results were recorded when the run was made, not in this workspace, and cancelling it changes nothing.
replay
bool
Replays a sample's recorded Accel-Sim results. default false
An output file a sim uploaded with PUT /api/sims/{id}/files/{name}.
field
type
description
name
str
Matches FILE_NAME_PATTERN; Accel-Sim's name, plus .gz when the worker gzipped it.
size
int
Bytes as stored.
content_type
str
From the name: text/csv for .csv, text/plain for .txt and .log, application/json for .json, application/gzip for .gz, and otherwise a guess, falling back to application/octet-stream.
created_at
datetime
When this version was stored; a re-put replaces the file.
SIM_TRANSITIONS lists every allowed move. The app ignores any other move, whether it comes from a heartbeat or from the app itself. The comment above it in the source says who makes each move.
Allowed sim transitions. Main owns pending/launching/cancelled/lost; heartbeats own the rest.
from ↓ to →
pending
launching
running
lost
succeeded
failed
cancelled
pending
·
✓
·
·
·
✓
✓
launching
·
·
✓
✓
✓
✓
✓
running
·
·
·
✓
✓
✓
✓
lost
·
·
✓
·
✓
✓
✓
succeeded
·
·
·
·
·
·
·
failed
·
·
·
·
·
·
·
cancelled
·
·
·
·
·
·
·
succeeded, failed and cancelled are TERMINAL_SIM_STATES. Nothing leaves them. Concepts draws the same table as a diagram.