Bring the fork from its already integrated upstreamc2fc3cf3snapshot to710eb8f531. The new upstream commit changes only development/play build profiles: dev ThinLTO is disabled and dependencies use one codegen unit. Production release and ship profiles are unchanged; MoonWell integration and Russian localization are retained. Source: upstream commit710eb8f5, PR samwhosung/benilla#857. The patch is applied unchanged. MAP was regenerated and has no delta. Validation on Windows: formatting and locked workspace metadata pass. All automated land gates passed on the final tree (4100 seconds): clippy, workspace tests with and without installed data, documentation and render-pass checks, player-build tests and both engine boot checks. The only skipped tests are 31 optional vanilla-addon/Quiver corpus tests, because that corpus is unavailable. Parsed TOML confirms that all profiles match upstream and that release/ship profiles and workspace dependencies are unchanged. Russian roster labels, character creation names, deletion text and locale-aware NPC-cache tests passed against the real archives. No declared probe account is available for a live game login. Upstream performance figures were measured on macOS and are not claimed for Windows.
This commit was merged in pull request #5.
This commit is contained in:
+14
-1
@@ -46,11 +46,19 @@ kira = { path = "third_party/kira" }
|
||||
# Dependencies at opt-level 3 in dev: at opt-level 0, avian/parry collision drops a run to <1 fps.
|
||||
[profile.dev.package."*"]
|
||||
opt-level = 3
|
||||
# One codegen unit each, since `lto = "off"` below drops the ThinLTO that inlines across a crate's
|
||||
# units: at 16 units the dependencies cost +1.2 cpu_ms at the leg pin, at one nothing, and a cold
|
||||
# build is no slower.
|
||||
codegen-units = 1
|
||||
|
||||
# Our crates at opt-level 1: Bevy's generic hot paths monomorphize into them, and at opt-level 0
|
||||
# Stormwind drops from a pinned 60 fps to ~45; the warm incremental rebuild cost is ~0.
|
||||
# Stormwind drops from a pinned 60 fps to ~45.
|
||||
[profile.dev]
|
||||
opt-level = 1
|
||||
# No ThinLTO: above opt-level 0 rustc runs it over a crate's own codegen units by default, and an
|
||||
# incremental rebuild redoes it whole: 19 s of a one-line `benilla-app` edit's 25 s, and half its
|
||||
# 5.3 GB. Off, our crates cost +0.7 cpu_ms (+6 %) at the leg pin.
|
||||
lto = "off"
|
||||
|
||||
# No debuginfo trimming: `debug = "line-tables-only"` measures no recurring win on macOS + sccache.
|
||||
|
||||
@@ -71,3 +79,8 @@ incremental = true
|
||||
# Not for speed: under `incremental`, thin-local LTO leaves promoted `anon.*.llvm.*` symbols
|
||||
# unresolved and the link fails intermittently (rustc #86049).
|
||||
lto = "off"
|
||||
|
||||
# One codegen unit each, as in dev: at 16 the dependencies cost +1.2 cpu_ms against `release` at
|
||||
# the leg pin, at one the profile is +0.5, and a cold build is no slower.
|
||||
[profile.play.package."*"]
|
||||
codegen-units = 1
|
||||
|
||||
Reference in New Issue
Block a user