Conversation
alixander
marked this pull request as ready for review
September 15, 2026 05:09
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Human
AI
Native SVG compilation painted Markdown that only needed dimensions, rebuilt text measurement state, and repeatedly measured legend labels. TALA node sorting also used reflection-related temporary objects. This PR removes that work while preserving layout, output, ordering and validation behavior.
The three accepted changes were implemented and measured sequentially against the preceding accepted source:
slices.SortFuncandcmp.Comparefor node IDs, preserving the Go 1.27 sorting algorithm and comparator order.The routing scratch-map candidate passed correctness checks but failed its predeclared performance screen, so it was removed. Its patch and all measurements remain in the evidence archive.
Performance
Negative means lower; “inconclusive” means the paired 95% interval includes no change. Full-corpus rows use the same 246 successful diagrams. Each incremental row has its own immediately preceding baseline; the final rows are a separate direct comparison with the original source.
The affected-cohort confirmations support the first two changes' targeted benefit: Markdown measurement reduced pipeline time 0.783% on 24 Markdown cases; ruler/legend reuse reduced it 0.935% on those cases plus the native legend. The latter reduced rendering time 18.736%, which is a much larger percentage than its whole-pipeline gain. Allocation counts fell 3.466% in the direct full-corpus comparison.
The overall pipeline interval is −0.541% to −0.061%; CPU is −0.747% to −0.273%. These are modest, workload-specific improvements, not evidence that every diagram becomes faster. Do not add incremental percentages. Aggregate estimates are ratios of summed per-case medians. The dated report gives every interval, absolute public-case pipeline medians, all ten public diagrams, and limitations; its evidence ZIP contains all 33,640 numeric rows across eleven campaigns, frozen runners/statistics and public reproduction instructions. Private sources, names, paths, fonts and SVGs are excluded.
Runs use Go 1.27 on an active Apple M4 desktop with unchanged TALA options, seeds and native concurrency: ten adjacent paired timing rounds after two warmups, plus three separate allocation rounds. Predeclared affected/control confirmations use twenty pairs. None of the nine initial timing regression signals across seven cases repeated in the fixed confirmation. Individual intervals are unadjusted; all unfavorable observations are retained. Pipeline and process-wall time are distinct, as are allocated bytes and peak RSS. The runner explicitly adopts native CLI ruler reuse; unchanged library callers do not automatically get that opt-in benefit.
Validation
ci/performance-results; frozen Go runners stay inside the ZIP.