Skip to content

perf(coworld): enable LTO for Linux game images - #100

Merged
macromackie merged 1 commit into
mainfrom
codex/coworld-linux-lto
Oct 9, 2026
Merged

macromackie merged 1 commit into
mainfrom
codex/coworld-linux-lto

Conversation

@macromackie

@macromackie macromackie commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Enabling Nim's -d:lto for the shared Linux Coworld game-image build used by GotA, LvD, CTA, and AWM. The flag lets GCC optimize across the generated C files using the existing pinned compiler and release settings.

Eight controlled games on approved source 02eda3d formed four matched baseline/LTO pairs in one Modal task. Native elapsed time fell 11.14–14.78% (median 13.35%), with exact replay and result parity. That small sample covers two seeds and BASIC/neural rosters; it does not establish a gain for the currently deployed binary. This branch includes the subsequently merged target-filter optimization.

Game publication and deployment remain separate release decisions.

Manual Tests

  • Built all four actual Linux/amd64 images from the changed Dockerfile.
  • Ran the resulting GotA image locally on BASIC and neural fixtures. Replay and result hashes exactly matched the approved-source experiment for seed 2026 and map seed 54.
  • Existing all-game determinism, GotA lockstep, and AWM match/replay suites passed with LTO inside the Docker compiler image.

[Prepared with Codex]

@macromackie
macromackie marked this pull request as ready for review October 9, 2026 06:46
@macromackie
macromackie merged commit 743f108 into main Oct 9, 2026
4 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.

1 participant