fix(builder): build times measured on nightly-56: the docs, the Builders' estimates and when to measure again #175
No reviewers
Labels
No labels
area/accessibility
area/audio
area/input
area/install
area/menu
area/renderer
area/saves
area/upscaling
good first issue
gpu/amd
gpu/igpu
gpu/intel
gpu/nvidia
help wanted
kind
bug
kind
chore
kind
docs
kind
feature
kind
performance
kind
question
needs measurements
platform/linux
platform/steam-deck
platform/windows
preview
priority
critical
priority
high
priority
low
status
blocked
status
confirmed
status
duplicate
status
invalid
status
needs-info
status
wontfix
testing wanted
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Longshot!175
Loading…
Reference in a new issue
No description provided.
Delete branch "HumanBean/Longshot:docs/build-times"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
The docs told players a build takes "10 to 45 minutes" (README, getting started, common problems), "about 40 minutes" (CONTRIBUTING) or 25 and 43 minutes (design notes). A player's build of the current nightly takes about 14 minutes on a 12-core desktop, and nothing told developers to keep these numbers current.
What changed
tools.lock), and before each release candidate.fix(builder)commit):Strings.cs,MainWindow.xaml,MainWindow.xaml.cs, the Linux Builder). They now say 15 to 30 minutes; the top of the range is for slower PCs.recomplauncher.json's step said "10 to 45 minutes" and now says "15 to 30 minutes".WithShadersgave the shaders 8% of the bar; they are 37% on Most.make_game.py'sSTAGE_SPANgets the same change.tests/test_make_game_prepare.pyfollows the new shares.-O1.Flags and settings
None
Measurements
Baseline: nightly-56 @
e7ed2f7a, run 1. This is a docs-only change, so there is no main and PR pair: both columns measure the nightly the docs describe (e7ed2f7a65), the newest when measured (nightly-58 has been tagged since).Hardware: Ryzen 9 7900X (12 cores, 24 threads), 30 GB, RTX 3090 (NVIDIA 620.70.06), Samsung 980 PRO NVMe, Linux (CachyOS, kernel 7.3.3).
Method:
SHA256SUMSand its signature, unpack, then run the Builder's ownmake_game.pycommand line (24 jobs, Compile shaders Most).@@stagelines.e7ed2f7a, run 1e7ed2f7a, run 2 (empty NVIDIA cache)-O1) and linkRun 2's read was slower because other work was running on the PC at the time (load average 20-23, against 5-10 in run 1).
Testing
Tested:
development.md#build-timesresolves to the new heading.tests/run_all.pyat the last commit: 465 passed, 2 failed, 69 skipped. The two failures are this PC's Python, not this change:test_bake_portability.py: no module namedzstandard;test_builder_log_read_only.py: nolibtk8.6.so.Not tested:
make_game.py).Needs other testers:
Screenshots
Nothing on screen
Risk and rollback
Docs, the Builders' text and the progress bar's shares; the build itself does not change. Reverting the commits is enough.
Reviewer notes
The old 25, 43 and 79 minute figures in design.md are dated findings, so they are kept and annotated rather than rewritten.
Issues
None
Checklist
For everyone
type(scope): description).main.python -I -B tests/run_all.pyrun and passing (any failure that also fails onmainis named above). The two failures are named under Testing; both come from missing local Python packages.third_party/untouched (a new folder with aPROVENANCE.mdinstead).If applicable
Assisted-by:/Co-Authored-By:trailers.tests/that reads changed source updated in this PR, not weakened.WIP: docs: build times measured on nightly-56, and when to measure them againto docs: build times measured on nightly-56, and when to measure them againdocs: build times measured on nightly-56, and when to measure them againto fix(builder): build times measured on nightly-56: the docs, the Builders' estimates and when to measure againNew commits:
00e60a7b: the Builders' "About 45 min" (all 13 languages) and recomplauncher.json's "10 to 45 minutes" now say 15 to 30 minutes. The progress bar's step shares are now measured: the shaders take 37% of the bar on Most, not 8%.9695c828: test_make_game_prepare follows the new shares.The launcher's own estimate, scaled to the PC and corrected as the build runs, is in MagicBeanDev/LongshotLauncher#28.