Skip to content

docs(dev): name the memory budgets and the sleeping-display stop in the game testing guide - #8135

Open
mrfelek wants to merge 1 commit into
boykopovar:mainfrom
mrfelek:docs/game-testing-budgets
Open

mrfelek wants to merge 1 commit into
boykopovar:mainfrom
mrfelek:docs/game-testing-budgets

Conversation

@mrfelek

@mrfelek mrfelek commented Oct 19, 2026

Copy link
Copy Markdown
Contributor

What

Three additions to docs/dev/GAME_TESTING.md (#6627), from runs since it merged:

  • Memory budgets (under "Check the GPU and the caches"). The host import budget and the texture cache budgets come from each machine's memory and can change a title's frame rate several times over, so results from two machines don't compare until these are known. The section names the log lines to read and report: [gpu] host import budget: ... refused so far (printed only when an import is refused, at most every 10 s), [gpu] sampled texture cache budget, and the [texture-cache] (10 s) line with APS5_PROFILE_DRAW=1. It links APS5_HOST_IMPORT_MIB (ENVIRONMENT) and APS5_TEXTURE_CACHE_MIB (USAGE, Texture cache budget). Examples from the discussions: ASTRO BOT is about 2.5× slower on 32 GiB machines at fix(agc): keep half the host heap out of the host import budget #6472's import budget (EdouardSence on Astro Bot (PPSA21564) #357 and fix(agc): keep at most 4 GiB of the host heap from the host import budget #7844), and Sky Garden on a 12 GB card loses about two thirds of its frame rate at the 2048 MiB texture budget floor (Astro Bot (PPSA21564) #357). "Reporting a result" item 6 now asks for these lines too.
  • Sleeping display (under "Power and display"): a title started while the display sleeps stops with SDL_GetWindowDisplayIndex failed: Couldn't find any displays (VideoOutDriver.cpp); keep the display awake for long or unattended runs.
  • tools/check_main_sync.py --fetch (under "Before a run"): reports whether the branch is in step with upstream main, so a result isn't taken on an old base by mistake.

Tested

Not tested beyond the docs: tools/check_conventions.py --base origin/main passes (it checks the links), and tools/pr_overlap.py reports no overlap. The log line formats are copied from GuestBufferMemory.cpp and ShaderResources.cpp on main, and the display message from VideoOutDriver.cpp. The memory-budget lines and the display stop were seen on Linux, RTX 3080 Ti, in ASTRO BOT (PPSA21564) and Diablo II: Resurrected (PPSA03912) runs this week.

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source
  • Generic behaviour, not specific to one title
  • Depends on: none
  • Fixes: none
  • Unblocks: none
  • GPUs tested: n/a
  • AI-assisted: yes

AI-assisted; the runs are from my machine(s).

@github-actions github-actions Bot added the docs label Oct 20, 2026
@oneandonlydean

Copy link
Copy Markdown
Collaborator

Thanks, this is useful: the budget lines and when to report them belong in the guide. One change, please: we don't name specific titles in the docs, so could you drop the sentence with the game and level example? The general description of thousands of evictions per 10 s at the 2048 MiB floor already says it. Per-game findings go in the Game bring-up discussions.

@oneandonlydean oneandonlydean self-assigned this Oct 20, 2026
…he game testing guide

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BywPXoZACVi8ALV4JKvuPZ
@mrfelek
mrfelek force-pushed the docs/game-testing-budgets branch from 3a50692 to bb864e8 Compare October 20, 2026 09:05
@mrfelek

mrfelek commented Oct 20, 2026

Copy link
Copy Markdown
Contributor Author

@oneandonlydean done in bb864e8: the sentence with the title example is gone; the general description of the evictions at the 2048 MiB floor stays.

AI-assisted; the runs are from my machine(s).

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants