diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-31 01:32:04 -0400 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-31 01:32:04 -0400 |
| commit | a03e816886f4241309a6e77ba7df1ad922da1fc0 (patch) | |
| tree | 034f04751a0ee44b0ec6840a111adb7553f05174 /src/common/fiber.cpp | |
| parent | b40ad217ab829226841cb71f6e4c5cb05977a225 (diff) | |
nx2: let the host page out texture pool backing first
Switch 2 sparse blocks and GPU-only regions get guest memory when a game
writes them (Mario Kart World copies 2-4 GB of compressed textures into
its sparse texture pools) and the texture cache reads it again only when
it builds an image there. Every 30 s, mark that backing cold: its pages
leave the working set (VirtualUnlock on Windows, MADV_PAGEOUT on Linux)
so the OS compresses or pages them out before anything else when RAM is
short. The contents stay. Mario Kart World: 8.5 GB of RAM in use at five
minutes instead of 9.0 GB on a machine with RAM to spare, frame times
unchanged.
Diffstat (limited to 'src/common/fiber.cpp')
0 files changed, 0 insertions, 0 deletions
