docs(perf): add owner report, run-3 results and player tuning notes
This commit is contained in:
1 parent
c5d25faa7c
commit
4f450e9612
4 files changed
+174
-5
No files matched your search
@@ -0,0 +1,99 @@
|
||||
# Client performance — owner report (2026-10-18)
|
||||
|
||||
Plain-language summary of the Phase 2 benchmarks. Full tables and method:
|
||||
[`RESULTS-proxy.md`](RESULTS-proxy.md). Player-facing advice:
|
||||
[`PLAYER-TUNING.md`](PLAYER-TUNING.md). All numbers come from **one stand-in machine**
|
||||
(Ryzen 9 9900X / RX 7800 XT, 1920×1080), not the fleet machines — see Caveats.
|
||||
|
||||
## TL;DR
|
||||
|
||||
- The tuned defaults we already ship beat upstream defaults in **every** test scene, and
|
||||
start the game about 6 s faster.
|
||||
- This session shipped faster startup (ModernFix dynamic resources, −7.6 s) and a fix that
|
||||
keeps Create's fast renderer working with shaders on (Iris Flywheel Compat).
|
||||
- Shaders stay **opt-in**. MakeUp shadowless is nearly free except on big Create builds;
|
||||
Complementary is expensive. Fresh Animations is the most expensive optional visual.
|
||||
- Players should give Minecraft **5 GB** of memory — 4 GB is measurably worse, more is not faster.
|
||||
- Two decisions for you: **remove Flerovium** (its win didn't hold up — I recommend yes), and
|
||||
**keep or revert the spawn tuning** (harmless, but it doesn't measurably cut mob load).
|
||||
|
||||
## What shipped
|
||||
|
||||
| Commit | Change |
|
||||
|---|---|
|
||||
| `7841361` | ModernFix `mixin.perf.dynamic_resources=true` (enforced `config/modernfix-mixins.properties`); added **Flerovium 1.1.2** and **Iris Flywheel Compat 2.4.0** (both client-only) |
|
||||
| `c5d25fa` | Fix: `7841361`'s pack index held hashes of server-re-saved spawn configs, so the server's install failed ("Hash invalid") and it didn't start at 14:06. Re-hashed; server up 14:18. Nothing was pushed. |
|
||||
|
||||
The Deck tier already uses Distant Horizons' LOW quality preset — the setting that won the
|
||||
DH test — so no DH change was needed. Nothing has been pushed yet.
|
||||
|
||||
## Measured gains
|
||||
|
||||
| What | Before | After |
|
||||
|---|---|---|
|
||||
| Tuned defaults vs upstream — vista p99 frametime | 9.33 ms | 8.23 ms |
|
||||
| Tuned defaults vs upstream — mob pen 1 % low | 110 fps | 186 fps |
|
||||
| Tuned defaults vs upstream — startup | 31.4 s | 25.4 s |
|
||||
| ModernFix dynamic resources — startup | 33.9 s | 26.3 s (plus better frametimes) |
|
||||
| Iris Flywheel Compat — Create floor with MakeUp shaders, p99 | 13.26 ms | 3.98 ms |
|
||||
| Iris Flywheel Compat — same scene, average fps | 117 | 644 |
|
||||
|
||||
(Lower p99 = fewer stutters; higher 1 % low = smoother worst moments.)
|
||||
|
||||
## Shaders
|
||||
|
||||
- Keep them **opt-in** (the pack downloads them; nothing turns them on).
|
||||
- **MakeUp – Ultra Fast, shadowless profile** is close to free on terrain and airships.
|
||||
- Without help, every shaderpack turns off Create's fast renderer: the Create floor dropped
|
||||
from ~974 to ~120 fps average in every profile. **Iris Flywheel Compat**, now shipped, fixes
|
||||
that (table above). It's an unofficial mod, so it may break when Create or Iris update.
|
||||
- **Complementary** is costly: about 2.7 ms worse p99 on the vista and about twice the frame
|
||||
time on the airship scene.
|
||||
- Shader **shadows corrupt airships** (Iris issue #3164) — recommend shadowless profiles.
|
||||
|
||||
## Fresh Animations
|
||||
|
||||
Mob-pen p99 goes from 4.32 ms to **8.65 ms** with Fresh Animations, and **10.20 ms** with
|
||||
the Extensions pack too. Keep it opt-in; Deck players shouldn't use it.
|
||||
|
||||
## Memory
|
||||
|
||||
**5 GB** is the smallest heap that performed as well as the best. 4 GB lost about 23 fps of
|
||||
1 % low on the teleport tour; 6 and 8 GB were no better. Players set this in their launcher.
|
||||
|
||||
## Spawn tuning
|
||||
|
||||
Measured 4 times per config at three biome sites. Total mob counts barely changed
|
||||
(jungle 129.5 → 128.0, river 208.0 → 211.5, warm ocean 145.0 → 136.0). The tuned species
|
||||
are a bit rarer, as intended, and nothing really disappeared (the automated "back off"
|
||||
flag came from species that only ever showed up once per run). **It's harmless, but it
|
||||
doesn't measurably reduce the load.** No config was changed.
|
||||
|
||||
## Decisions needed from you
|
||||
|
||||
1. **Remove Flerovium?** Its earlier win was measured against an unusually bad baseline.
|
||||
On a fair re-test it was worse on the vista and a tie on the mob pen. **Recommended: yes.**
|
||||
2. **Spawn tuning: keep or revert?** Keeping it costs nothing; reverting returns the mods'
|
||||
own spawn rates. Either is fine performance-wise.
|
||||
|
||||
## Caveats
|
||||
|
||||
- **One stand-in machine.** The fleet machines (Steam Deck, 7700K + GTX 1060, 6700K +
|
||||
1080 Ti) were unreachable, so results are relative and unconfirmed on real player
|
||||
hardware. This GPU makes some costs (airships, DH distance) look cheaper than they are
|
||||
on older cards.
|
||||
- GPU clocks weren't pinned (no root access), which adds a little noise.
|
||||
- A harness bug ran part of the first run on the wrong Java settings. Comparisons inside
|
||||
each test are still fair; details in `RESULTS-proxy.md`.
|
||||
|
||||
## Not done
|
||||
|
||||
- Spark CPU profile of the worst scene (B13).
|
||||
- Confirmation on the fleet machines.
|
||||
- The airship decay test (B5), which needs the fleet machines.
|
||||
|
||||
## Please report texture problems
|
||||
|
||||
ModernFix dynamic resources loads textures and models on demand. We skipped the
|
||||
missing-texture check at your request, so if anyone sees purple/black "missing" blocks or
|
||||
items in play, report the block/item name.
|
||||
@@ -49,7 +49,8 @@ extra in multiplayer. Distant Horizons draws everything beyond that.
|
||||
## 2. Java memory and garbage collector (Prism → Edit Instance → Settings → Java)
|
||||
|
||||
Use **Java 21** (Temurin 21 recommended). More memory is *not* faster: a bigger heap makes
|
||||
each GC pause longer.
|
||||
each GC pause longer. Bench (B4h): **5 GB is enough; 4 GB is measurably worse** (tour 1 % low
|
||||
−23 fps); 6 and 8 GB were no faster than 5. Don't go below 5 GB on any machine.
|
||||
|
||||
| Your machine | Max memory (`-Xmx`) | Min memory |
|
||||
| --- | --- | --- |
|
||||
@@ -82,8 +83,10 @@ Don't add `-XX:+AlwaysPreTouch` on the Deck or on low-RAM PCs. Don't copy
|
||||
*Pending the owner's shader policy. Interim advice:* **shaders off** is the pack default.
|
||||
They cost more in this pack than usual:
|
||||
|
||||
- With any shaderpack on, **Create's GPU renderer (Flywheel) switches off**, so every
|
||||
rotating shaft and machine is drawn the slow way, and drawn again for shadows.
|
||||
- On its own, Flywheel (Create's GPU renderer) **switches off when any shaderpack is on**.
|
||||
The pack now ships **Iris Flywheel Compat**, which keeps it working under shaders (bench:
|
||||
Create floor p99 13.3 → 4.0 ms with MakeUp). It's unofficial, so it may lag behind
|
||||
Create/Iris updates; if Create machines render wrong with shaders, report it.
|
||||
- Shader **shadows corrupt airships** (Sable sub-levels; Iris issue #3164).
|
||||
- Distant Horizons adds a shadow pass over all its terrain.
|
||||
|
||||
|
||||
@@ -5,7 +5,8 @@ P1 7700K+1060, P2 6700K+1080 Ti). Run 1: 2026-10-16 22:25 → ~2026-10-17 05:00
|
||||
(57 launches incl. one auto-retry), 306/309 capture windows valid. Source:
|
||||
`~/onion-bench/results/session.jsonl` (`ts >= 2026-10-16T22:24`), verdicts from
|
||||
`harness/analyze.py --baseline C1 --noise B0 --since 2026-10-16T22:24`.
|
||||
Run 2 (B4h, B7 shader rows, B12b) is in progress; B13/B14 are manual and not done.
|
||||
Run 2 (B4h, B7 shader rows, B12b, B14) and Run 3 (new mod set, Flerovium confirmation,
|
||||
B14 ×4) are below; B13 is not done.
|
||||
|
||||
## Method
|
||||
|
||||
@@ -123,7 +124,7 @@ shadowless is nearly free; Complementary costs ~2.7 ms p99 on S1 and ~2× frame
|
||||
| trial | result | verdict |
|
||||
|---|---|---|
|
||||
| **Iris Flywheel Compat** 2.4.0 (MakeUp default, vs shader-baseline) | S2 **3.98 / 218.3 vs 13.26 / 65.8** (avg 644 vs 117 fps); S1 9.92 / 84.8 vs 10.23 / 83.8 (tie); S4 3.10 / 266.1 vs 3.01 / 277.6 (1 % low −11.5, loss) | **win under shaders** (restores Flywheel instancing) — add after a visual check of Create contraptions/airships with a shaderpack (unofficial mod; breaks on Create/Iris updates) |
|
||||
| **Flerovium** 1.1.2 (vs C1) | S3 **3.48 / 229.9 vs 5.71 / 147.4**; S1/S2/S5 tie | **win** on entities — but the B12b C1 S3 baseline (5.71) is worse than every run-1 C1 S3 (4.32–4.46), so the true gain is ~0.9 ms / +45 fps vs run 1. Add after one confirmation pair |
|
||||
| **Flerovium** 1.1.2 (vs C1) | S3 **3.48 / 229.9 vs 5.71 / 147.4**; S1/S2/S5 tie | **win** on entities — but the B12b C1 S3 baseline (5.71) is worse than every run-1 C1 S3 (4.32–4.46), so the true gain is ~0.9 ms / +45 fps vs run 1. Add after one confirmation pair. **Superseded by Run 3** (did not hold up) |
|
||||
| Gnetum 3.3.6 | S3 4.41 / 189.3 (vs anomalous 5.71; ≈ run-1 C1) ; S1/S2/S5 tie | tie in practice → no add |
|
||||
| Better Block Entities 1.3.4 | S2 3.51 / 245.3 (loss), S3 loss; with FA 9.86 / 89.8 vs 9.52 / 87.4 (tie) | reject |
|
||||
| Super Resolution 0.9.2-alpha.2 | S1 8.74 / 99.7 (loss), S5 1 % low −16.6 (loss) | reject on this proxy (P0-only lever; its first launch rewrites `fml.toml` and demands a restart) |
|
||||
@@ -134,6 +135,8 @@ New mod adds (Iris Flywheel Compat, Flerovium) ⇒ **re-run B0** before any late
|
||||
|
||||
### B14 — spawn tuning (defaults vs shipped, 10 min per site, **1 run each**)
|
||||
|
||||
*Superseded by Run 3 (4 runs per config).*
|
||||
|
||||
| site | defaults total / tuned | shipped total / tuned |
|
||||
|---|---|---|
|
||||
| jungle (−8 107 −201) | 123 / 5 | 118 / 3 |
|
||||
@@ -148,6 +151,52 @@ exercise it. **Inconclusive at n = 1**: needs ≥ 3 interleaved runs per config
|
||||
before any back-off; if it persists, the candidate is Fowl Play duck/goose weights.
|
||||
All runs: 33 count rows, `biome_ok=1`, config check ok.
|
||||
|
||||
## Run 3 (2026-10-18): new mod set, Flerovium confirmation, B14 ×4
|
||||
|
||||
Same machine and method, default JVM, **new mod set** (shipped in `7841361`: + Flerovium
|
||||
1.1.2, + Iris Flywheel Compat 2.4.0, ModernFix `dynamic_resources=true`). Numbers are
|
||||
p99 ms / 1 % low fps, medians of session medians.
|
||||
|
||||
### B0v2 — noise floor for the new mod set (C0, S1, 3 sessions)
|
||||
|
||||
| p99 | p99 spread | 1 % low | 1 % low spread | avg fps |
|
||||
|---|---|---|---|---|
|
||||
| 9.74 | **0.41 ms** | 87.2 | **1.6 fps** | 219 |
|
||||
|
||||
These are the thresholds for any later matrix work on this mod set.
|
||||
|
||||
### Flerovium confirmation (C1, 2 sessions each, interleaved on/off)
|
||||
|
||||
| scene | Flerovium on | Flerovium off | Δ (on vs off) | verdict |
|
||||
|---|---|---|---|---|
|
||||
| S1 vista | 8.42 / 99.8 | 8.02 / 105.0 | p99 −0.40, 1 % low −5.2 | **loss** (1 % low drop > 1.6) |
|
||||
| S3 mob pen | 5.55 / 151.9 | 5.94 / 141.1 | p99 +0.39 (just under 0.41) | **tie / inconclusive** — S3 session spread is huge (p99 1.42–2.34 ms, 1 % low 32–61 fps) |
|
||||
|
||||
**The run-2 win did not hold up** (it was measured against an anomalous S3 baseline).
|
||||
**Recommendation: remove Flerovium** — awaiting owner OK; it is currently shipped in `7841361`.
|
||||
|
||||
### B14 — spawn tuning, 4 runs per config
|
||||
|
||||
Median final count at 10 min within 128 blocks (total / tuned species):
|
||||
|
||||
| site | defaults | shipped |
|
||||
|---|---|---|
|
||||
| jungle | 129.5 / 4.0 | 128.0 / 2.5 |
|
||||
| river | 208.0 / 34.5 | 211.5 / 28.5 |
|
||||
| warm ocean | 145.0 / 9.5 | 136.0 / 0.5 |
|
||||
|
||||
The automated rule says **back off** (snail vanished at the jungle site, gazelle at the warm
|
||||
ocean), but both peaked at 1 per run — noise, not a disappearance. Sea bunny never appeared
|
||||
under either config, so this site doesn't exercise it. The warm-ocean tuned drop is mostly
|
||||
a Fowl Play goose/duck herd. **Verdict: the tuning is harmless but does not measurably
|
||||
reduce total entity load.** Owner decides keep vs revert; no config change made.
|
||||
|
||||
### Shipping incident
|
||||
|
||||
`7841361`'s `index.toml` captured hashes of runtime re-saved spawn configs, so the server's
|
||||
packwiz install failed (`Hash invalid`) at 14:06 and the server didn't start. Fixed by
|
||||
re-hashing in `c5d25fa` (server up 14:18). Nothing was pushed.
|
||||
|
||||
## Caveats
|
||||
|
||||
- Run 2: Super Resolution's first launch flipped `earlyWindowControl` in the bench `fml.toml` (not journaled by the harness); later run-2 sessions started with it off. Loading-screen only — frametimes unaffected; startup times after 01:54 are not comparable. Reset 2026-10-18.
|
||||
|
||||
Reference in new issue
Block a user