Skip to content
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

Some drawcall submission bug fixes #18329

Merged
merged 4 commits into from
Oct 9, 2023
Merged

Some drawcall submission bug fixes #18329

merged 4 commits into from
Oct 9, 2023

Conversation

hrydgard
Copy link
Owner

@hrydgard hrydgard commented Oct 9, 2023

Fix some bugs that my recent optimizations introduced.

Also, bring over a couple of minor changes from #18328 , in order to be able to rebase that one to shrink it.

@hrydgard hrydgard added the GE emulation Backend-independent GPU issues label Oct 9, 2023
@hrydgard hrydgard added this to the v1.17.0 milestone Oct 9, 2023
@hrydgard hrydgard changed the title More triangle fixes Some drawcall submission bug fixes Oct 9, 2023
@hrydgard hrydgard merged commit 34710ec into master Oct 9, 2023
15 checks passed
@hrydgard hrydgard deleted the more-triangle-fixes branch October 9, 2023 12:31
@fp64
Copy link
Contributor

fp64 commented Oct 9, 2023

Offtopic here, but any reason you use inverse scrambler from https://github.com/skeeto/hash-prospector (lowbias32_r)? It seems slightly more expensive than plain lowbias32, and significantly worse as an integer hash. Some numbers:

Function Linf RMS PractRand
MurmurHash3's finalizer 4044016 566904.4 Fails at 16KB
lowbias32 2023971 372660.4 Fails at 32KB
lowbias32_r 168685748 9288956.4 Fails at 16KB
TheIronBorn's version 1211488 231074.2 Fails at 64KB
My version 836260 121867.6 Fails at 1GB
triple32 167788 44857.8 Fails at 1GB ('mildly suspicious' at 8KB)

Linf and RMS are avalanche scores (lower is better), PractRand measure its quality as an RNG.
Not sure how much this quality difference matters in practice.
Speed-wise, MurmurHash3's finalizer, lowbias32, and the TheIronBorn's version are identical. My version is slightly slower (should be about the same as lowbias32_r), and triple32 slightly slower still.

@hrydgard
Copy link
Owner Author

hrydgard commented Oct 9, 2023

No reason in particular, in fact I plan to redo all the hashing here at some point.. That's good input.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GE emulation Backend-independent GPU issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants