Skip to content

Remove redundant feasibility checks from hot prediction paths - #235

Open
Alexander-Mitrofanov wants to merge 1 commit into
refactor-to-c++23from
perf/ap1-redundant-feasibility
Open

Remove redundant feasibility checks from hot prediction paths#235
Alexander-Mitrofanov wants to merge 1 commit into
refactor-to-c++23from
perf/ap1-redundant-feasibility

Conversation

@Alexander-Mitrofanov

Copy link
Copy Markdown
Collaborator

Implements the first measured phase-3 optimization from discussion #232.

The change removes duplicate accessibility predicates where areComplementary already enforces the same checks. Row-hoisted accessibility screens and recurrence order are retained, so the scientific algorithm and arithmetic are unchanged. A counting regression proves the default seed path no longer repeats the direct accessibility calls.

Validation:

  • GCC 14.4 strict C++23 release: 4,284 assertions in 37 API cases passed
  • all 20 CLI golden cases passed
  • parent and candidate benchmark outputs are byte-identical
  • benchmark environment fingerprint: 52fb1f3e9e0f6e3806593ed89ca02aea5ea8fa2f2fa9544e9dfd53f07bdbd68e

Same-host five-repeat benchmark against 8bd1676:

  • LP X/H, accessibility disabled: 3.602 +/- 0.069 s -> 3.502 +/- 0.054 s (1.029x)
  • noLP X/H, accessibility disabled: 0.738 +/- 0.008 s -> 0.672 +/- 0.025 s (1.098x)
  • peak RSS is unchanged within measurement noise

Evidence: private benchmark commit 5dfd52dc12ff35f5a6bf31f447537eb7460987af; validation Action 31866297250 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.

1 participant