-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
D3D: remove load texture on creation optimization #1501
Conversation
390ec0c
to
62c4070
Compare
on irc: I would expect that very similar work is required (copy resource to system visible memory, then copy to video private). |
On the second thought, it might be the case that upload to video private is done synchronously. This would make it faster than UpdateSubresource. |
@kayru So do you think this optimization matters? I want to implement a texture pool like your rendertarget one. So this optimization is in my way :/ |
I think the best thing is always to measure real impact. |
NSMBWii EFB2RAM 3x IR Master: 89 FPS 1x IR is 119 fps on both builds. |
Texture pooling would likely be more beneficial than this optimization anyway. If you can reimplement this later for a win-win, though, that'd be cool. |
@degasus what is the problem with passing in initial data on texture creation? You should still be able to use UpdateSubresource to change content later. |
@kayru With pooling, we'll hit this path less often. It's also in the way of decoding directly into a mapped staging buffer. |
So why remove the optimisation if it badly affects higher IR values? |
To make things faster in the long term. |
So maybe this PR can wait until a replacement gets made? Edit: Please :( puppy eyes |
@ZephyrSurfer That's the reason why this PR wasn't touched in the last three weeks ;'-) |
3a43f94
to
128d497
Compare
This reverts an optimization which isn't worth imo. Every texture uploads have to alloc vram and a staging buffer, so there is no need to do both in the same call.
This variable isn't use any more.
128d497
to
38f42da
Compare
degasus> so is this PR as good as master? So ready to merge? The old slowdown wasn't because of this optimization. I did also remove the hint to mark 1-level textures as default instead of dynamic. But it seems to be faster to create map-able textures. |
LGTM, the changes in the PR look to be purely cosmetic. |
D3D: remove load texture on creation optimization
This PR is the cause of the D3D backend crashing with Intel cards. With previous revision, tried multiple startups of both games & the emulator and it never crashes, with this PR it crashes 100% of the time in SMG2 just past the Wiimote screen. |
No description provided.