sharpemu/tests/SharpEmu.Libs.Tests/Gpu
ParantezTech ca102a67c7 [GPU] Run bounded modulo copies of plain words on the host
Demon's Souls copies its per-frame constant and descriptor tables with a
compute kernel (dst[i] = src[i % N] for i < count). Run on the GPU, the
destinations stay GPU-dirty, and every draw whose resource tables read them
waits for a readback: about 19% of the render thread in the title scene,
for values that never changed.

The kernel is now recognized by its instruction sequence. When both
descriptors are plain 32-bit words of the same format and neither range is
GPU-dirty or GPU image memory, the copy is written to guest memory through
the host DMA path and the dispatch is skipped; anything else still runs on
the GPU. SHARPEMU_HOST_BOUNDED_COPY=0 turns it off.

Title scene with profiling: 7.4-8.6 -> 11.8-15.9 fps.
2026-10-04 16:32:25 +03:00
..
Buffers [GPU] Run bounded modulo copies of plain words on the host 2026-10-04 16:32:25 +03:00
GpuCommands Perf computed shaders (#1013) 2026-10-03 04:49:43 +03:00
Images [SpirvTranslator] Shader fixes (#1019) 2026-10-04 01:17:02 +03:00
Metal Astrobot / Demon's soul performance improvement (#955) 2026-09-30 18:14:21 +03:00
Pipelines [GPU] Run bounded modulo copies of plain words on the host 2026-10-04 16:32:25 +03:00
Rendering [GPU] Run bounded modulo copies of plain words on the host 2026-10-04 16:32:25 +03:00
Scheduling Alpha Rebuild Progress (#887) 2026-09-20 04:09:27 +03:00
Vulkan [SpirvTranslator] Shader fixes (#1019) 2026-10-04 01:17:02 +03:00