docs(steamdeck): record geometry and GPU clock measurements #2818

Open
github-sync wants to merge 1 commit from github/pr/2818 into main
Owner

@polaco1782 opened this pull request on GitHub · 2026-11-12 15:19 UTC · original

Steam Deck players report severe slowdowns in dense areas, and we needed measurements to establish how much reducing geometry could help. This records the measured gains and their limits so further work can target CPU, GPU and memory costs with a reproducible baseline.

The change is documentation only: seven measured/attempted runs in docs/tested-configurations.md, plus a link from the existing Deck worklist entry. No runtime changes, default GPU clocks, presets, experimental memory-writing scripts, game files or build artifacts are included.

Measurements used an LCD Steam Deck, SteamOS 3.8.25, RADV VANGOGH / Mesa 26.2.0-devel (62436c0070), 16 GB shared RAM, a 15 W limit, 1280x800 output setting, 50% render resolution, Docked profile, FOV 110%, frame generation off and the documented mesh-culling workaround. The installed host was 55b976c0 (source ae9e7c1b), with the local shader-preparation renderer described in #2800. These results predate newer main/readback changes, including #2602.

Same stationary Hyrule Field view Measured FPS
Automatic GPU clocks, original detail 8.3-10.3 across phases
Fixed 1200 MHz GPU, original detail 12.3-12.7
Fixed 1200 MHz, foliage 25%, grass 0, shadow distance 50% 14.42
Original detail restored at 1200 MHz in that run 12.34

Stronger model/shadow cuts did not add a meaningful gain. The handheld base-quality comparison is inconclusive because the flag was not rechecked at phase end. Kakariko captures were inside the potion shop; its outdoor transition was stopped on low memory, so no outdoor FPS improvement is claimed.

These were bounded headless tests with copied saves/settings, not Steam Gaming Mode or extended-play acceptance. GPU clocks were restored to automatic at the original 200-1600 MHz range, original save/settings hashes were unchanged, and temporary game/save copies were removed. Current main has not been benchmarked on the Deck by this investigation. The graphics parameter experiment follows the parameters described in #2669; it does not validate that PR's complete implementation.

Validation on upstream base 51da0464 plus these documentation edits:

  • Full tests/run_all.py --jobs 2: 459 passed, 3 failed, 33 skipped. All three failures were local-socket creation checks restricted by the managed sandbox (test_control.py, test_hookshot_ctl.py, test_team_chat.py).
  • Rerunning those three checks outside that sandbox: 3 passed, 0 failed, 0 skipped.
  • Every published FPS sequence cross-checked against the local numeric reports; seven table rows checked for matching columns.
  • git diff --check passed; reviewed scope contains only two Markdown documentation files.

See #1000. The report records an investigation and does not close the performance issue.

> [@polaco1782](https://github.com/polaco1782) opened this pull request on GitHub · 2026-11-12 15:19 UTC · [original](https://github.com/NotRexed/Hookshot/pull/2818) Steam Deck players report severe slowdowns in dense areas, and we needed measurements to establish how much reducing geometry could help. This records the measured gains and their limits so further work can target CPU, GPU and memory costs with a reproducible baseline. The change is documentation only: seven measured/attempted runs in `docs/tested-configurations.md`, plus a link from the existing Deck worklist entry. No runtime changes, default GPU clocks, presets, experimental memory-writing scripts, game files or build artifacts are included. Measurements used an LCD Steam Deck, SteamOS 3.8.25, RADV VANGOGH / Mesa 26.2.0-devel (62436c0070), 16 GB shared RAM, a 15 W limit, 1280x800 output setting, 50% render resolution, Docked profile, FOV 110%, frame generation off and the documented mesh-culling workaround. The installed host was `55b976c0` (source ae9e7c1b), with the local shader-preparation renderer described in #2800. These results predate newer main/readback changes, including #2602. | Same stationary Hyrule Field view | Measured FPS | |---|---:| | Automatic GPU clocks, original detail | 8.3-10.3 across phases | | Fixed 1200 MHz GPU, original detail | 12.3-12.7 | | Fixed 1200 MHz, foliage 25%, grass 0, shadow distance 50% | 14.42 | | Original detail restored at 1200 MHz in that run | 12.34 | Stronger model/shadow cuts did not add a meaningful gain. The handheld base-quality comparison is inconclusive because the flag was not rechecked at phase end. Kakariko captures were inside the potion shop; its outdoor transition was stopped on low memory, so no outdoor FPS improvement is claimed. These were bounded headless tests with copied saves/settings, not Steam Gaming Mode or extended-play acceptance. GPU clocks were restored to automatic at the original 200-1600 MHz range, original save/settings hashes were unchanged, and temporary game/save copies were removed. Current main has not been benchmarked on the Deck by this investigation. The graphics parameter experiment follows the parameters described in #2669; it does not validate that PR's complete implementation. Validation on upstream base `51da0464` plus these documentation edits: - Full `tests/run_all.py --jobs 2`: 459 passed, 3 failed, 33 skipped. All three failures were local-socket creation checks restricted by the managed sandbox (`test_control.py`, `test_hookshot_ctl.py`, `test_team_chat.py`). - Rerunning those three checks outside that sandbox: 3 passed, 0 failed, 0 skipped. - Every published FPS sequence cross-checked against the local numeric reports; seven table rows checked for matching columns. - `git diff --check` passed; reviewed scope contains only two Markdown documentation files. See #1000. The report records an investigation and does not close the performance issue. <!-- github-sync:item:2818 -->
Record seven bounded runs, their measurement method and limits, and link the
existing Deck performance work item to the results. The measurements use an
older installed build and do not claim a runtime fix or a new default.

Assisted-by: OpenAI Codex
Co-Authored-By: OpenAI Codex <[email protected]>
Commenting is not possible because the repository is archived.
No description provided.