Windows ~40% slower than Linux on the same machine (4070: ~60 vs ~100 FPS) #247
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#247
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Report
Same user, same machine (RTX 4070), same scene:
NVIDIA's Windows driver is usually the faster one, so the gap is probably ours: build, platform layer, or presentation.
Suspects, in rough order
USE_SDL_WINDOW=ON, soLLWindowWin32'stimeBeginPeriod(1)never runs.RenderFPSLimit'ssleep_untilwould overshoot by up to ~15.6 ms; it keeps only 2 ms of slack.vk_fillJoinWait/ decode-driven frames.timeBeginPeriod(1)at startup on Windows (andtimeEndPeriodat exit), or use a high-resolution waitable timer.fix_isa_note.py); the Windows clang-cl build may be baseline SSE2./arch,/O2and LTO/PGO flags betweenscripts/wincross/configure.shand the Linux configure._ITERATOR_DEBUG_LEVELmust be 0.BackgroundYieldTime(40 ms) applies when the window isn't foreground. Make sure focus is detected correctly with SDL on Windows.Asks
From the reporter, with
RenderVKSectionLogandRenderVKGpuTimerson, same spot on both OSes:Slipstream.logwith theGPU ms/frame,GPU sub ms/frameandSECTIONS avglines. These show whether Windows is CPU-bound (renderFrame / LL sections), GPU-bound (pass timings) or present-bound (vk_acquireWaithigh with low GPU total).RenderFPSLimit, windowed or fullscreen.