Skip to content

replay: track and publish scheduler slot states - #12513

Merged
jherrera-jump merged 1 commit into
firedancer-io:mainfrom
jherrera-jump:jherrera/replay-slot-states
Oct 23, 2026
Merged

jherrera-jump merged 1 commit into
firedancer-io:mainfrom
jherrera-jump:jherrera/replay-slot-states

Conversation

@jherrera-jump

Copy link
Copy Markdown
Contributor

No description provided.

@jherrera-jump
jherrera-jump force-pushed the jherrera/replay-slot-states branch from c933175 to 6ff50eb Compare October 23, 2026 20:14
@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
 ┌─ ⚡ PERF · 1ab7315 vs main@c85b7de ─────────────────────────────────
 │ SUITE                               BASELINE          NEW         Δ
 │ replay tps, mainnet               12,817 tps   12,889 tps  ·  +0.56%
 │ bench tps, localnet              666,155 tps  671,422 tps  ·  +0.79%
 │ snapshot load, testnet                4.88 s       4.87 s  ·  -0.31%
!│ mem total, mainnet                150.35 GiB   150.35 GiB  ▲   0.00%
!│ mem total, testnet                 86.66 GiB    86.66 GiB  ▲   0.00%
 │ clean compile, firedancer             3.17 s       3.19 s  ·  +0.77%
 │ binary size, firedancer             57.92 MB     57.93 MB  ·  +0.02%
 ├─────────────────────────────────────────────────────────────────────
@@ 0 REGRESSIONS · 2 WARNINGS · 0 IMPROVED · 5 NOISE @@
 └─────────────────────────────────────────────────────────────────────
history · 5 pushes
 ┌─ HISTORY · Δ vs main, per push, newest first ──────────────────────────────────
 │ HEAD         TPS    BENCH     SNAP    MEM·M    MEM·T  COMPILE   BINARY
!│ 1ab7315   +0.56%   +0.79%   -0.31%    0.00%    0.00%   +0.77%   +0.02%
!│ 98ed197   +0.02%   -0.30%   +0.27%    0.00%    0.00%   -0.58%   +0.02%
!│ 3638370   +0.13%   -0.19%   +0.26%    0.00%    0.00%   +0.20%   +0.02%
!│ 445685e   +0.22%    0.00%   -4.34%    0.00%    0.00%   -0.05%   +0.02%
+│ 6ff50eb   -0.15%   -0.18%   +1.00%    0.00%    0.00%   +0.73%   +0.02%
 └────────────────────────────────────────────────────────────────────────────────

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

An unresolved lifecycle-timing issue and timing-sensitive publication changes require correction, runtime validation, and final human review.

1 open issue
What changed in this PR

Adds scheduler slot-state tracking and publishes replay timing intervals for downstream consumers.

Changes:

  • Tracks debounced blocking and finish states across block lifecycle transitions.
  • Publishes batched state intervals on replay_out and increases the publication burst allowance.
  • Updates scheduler footprint expectations, interval tests, and replay mocks.
File Description
src/​discof/​replay/​test_sched.c Updates footprint checks and tests non-overlapping network-wait intervals.
src/​discof/​replay/​test_replay_tile.c Adds a mock for draining scheduler states.
src/​discof/​replay/​fd_sched.h Defines slot states, interval records, and the drain API.
src/​discof/​replay/​fd_sched.c Implements state tracking, debouncing, buffering, and lifecycle hooks.
src/​discof/​replay/​fd_replay_tile.h Defines the slot-state replay message.
src/​discof/​replay/​fd_replay_tile.c Publishes state batches and adjusts routing and burst capacity.

Review effort: Balanced

Comment thread src/discof/replay/fd_sched.c Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Scheduler lifecycle timing, debounce behavior across fork switches, and replay flow control need targeted runtime validation and human review.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

@jherrera-jump
jherrera-jump marked this pull request as ready for review October 23, 2026 20:52
yufeng-jump
yufeng-jump previously approved these changes Oct 23, 2026
Copilot AI balanced review requested due to automatic review settings October 23, 2026 21:20
@jherrera-jump
jherrera-jump force-pushed the jherrera/replay-slot-states branch from 445685e to 3638370 Compare October 23, 2026 21:20

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Scheduler lifecycle and publication changes need targeted runtime validation before approval.

1 open issue

Review effort: Balanced

Comment thread src/discof/replay/fd_sched.c Outdated
@jherrera-jump
jherrera-jump force-pushed the jherrera/replay-slot-states branch from 3638370 to b9b5609 Compare October 23, 2026 21:35
Copilot AI balanced review requested due to automatic review settings October 23, 2026 21:35
@jherrera-jump
jherrera-jump force-pushed the jherrera/replay-slot-states branch from b9b5609 to 98ed197 Compare October 23, 2026 21:38

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Timing-sensitive state accounting across fork transitions and replay publication flow control warrants targeted runtime validation and final human review.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

Copilot AI balanced review requested due to automatic review settings October 23, 2026 21:40
@jherrera-jump
jherrera-jump force-pushed the jherrera/replay-slot-states branch from 98ed197 to 1ab7315 Compare October 23, 2026 21:41

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Timing-dependent accounting across fork switches, abandonment, completion, and replay publication needs targeted runtime validation and human review.

No open issues 🎉

Review effort: Balanced

Copilot AI balanced review requested due to automatic review settings October 23, 2026 21:45

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Timing-sensitive scheduler lifecycle tracking and publication changes need targeted runtime validation and human review before approval.

No open issues 🎉

Review effort: Balanced

@jherrera-jump
jherrera-jump merged commit 7fb6996 into firedancer-io:main Oct 23, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants