effectcraft/docs
bflatastic e64076e432 GPU: running out of video memory falls back to the CPU instead of crashing (#106)
The desktop app shares egui-wgpu's device, which had no uncaptured-error
handler, so wgpu's default one panicked on an out-of-memory error on
every frame thread; the panicking frame stayed "in progress" forever and
never rendered again. The GPU frame budget was a fixed 1 GiB.

- GpuContext::new logs uncaptured errors once its pipelines are built
  (errors while building them still panic there, which the app catches
  to fall back to CPU compositing).
- Gpu::within_memory runs GPU work in an out-of-memory error scope; on an
  error the result is discarded and uploaded layers and pooled textures
  are freed.
- Frame workers render each frame within it; out of memory, the frame
  renders on the CPU and the RAM preview keeps half as many GPU frames
  (down to 64 MiB), since wgpu can't tell how much video memory there is.
- A frame whose render panics renders again on the CPU, or is released,
  so the viewer asks for it again.

Tests: a_frame_whose_render_panics_is_released (failed before),
running_out_of_video_memory_halves_the_gpu_frame_budget and
within_memory_returns_the_work_when_there_is_room.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 02:06:15 +07:00
..
brand Licensing: standard LICENSE files, NOTICE, ArtCraft brand terms 2026-10-04 10:05:24 -04:00
fidelity G2: improve editing reliability and Windows rendering fidelity 2026-10-06 00:00:31 -05:00
images M0.11: README rewrite with headless screenshots (hero, graph editor, effects, 3D, render queue) 2026-10-01 23:31:40 -04:00
agents.md G2: font menus list the installed fonts 2026-10-06 15:14:55 +00:00
architecture.md GPU: running out of video memory falls back to the CPU instead of crashing (#106) 2026-10-07 02:06:15 +07:00
control-protocol.md Angles: the revolutions ("0x") scrub and take typing (#93) 2026-10-07 01:29:03 +07:00
effects.md Merge main into M13.28 worktree 2026-10-04 02:57:55 -04:00
gaps.md Merge pull request #118 from storytold/claude/system-fonts-rmnw4m 2026-10-07 00:37:13 +07:00
parity.md Docs: installed fonts in the font menus (gaps, parity, ROADMAP, README, architecture) 2026-10-06 15:14:55 +00:00
plugins.md M13.12: docs (pdf README, parity, plug-ins), EPS Type 3 fonts reported 2026-10-03 09:51:22 -04:00
preferences.md G9: persist Japanese menu language without bundled fonts 2026-10-06 16:22:23 +09:00
testing.md M13.27: sim effects golden hashes 2026-10-04 00:50:03 -04:00
web.md M4.12: docs: ROADMAP, parity, web, preferences and agents brought up to date after M3 and M4 2026-10-05 06:35:00 +07:00