Skip to content

Parallel preprocessor processing #2630

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

Open
wants to merge 2 commits into
base: multiloader-new
Choose a base branch
from

Conversation

Luna5ama
Copy link
Contributor

It makes packs load faster (depending on how many preprocessors they spammed)

@douira
Copy link
Member

douira commented Feb 13, 2025

It would be interesting to actually see a profile of shader pack loading before and after this patch. My past measurements (quite some time ago, so they might now be outdated) indicate the preprocessor's share of the total shader reloading time is very small.

@Luna5ama
Copy link
Contributor Author

It would be interesting to actually see a profile of shader pack loading before and after this patch. My past measurements (quite some time ago, so they might now be outdated) indicate the preprocessor's share of the total shader reloading time is very small.

Like the description said. It depends on how many preprocessors they use. I saw good gains on Photon and Alpha Piscium. Also, there is #2629 that fixes transform cache.

@SpacEagle17
Copy link
Contributor

Any updates on this? Would be interesting to see if it could be looked into if the claims are correct :)

@Luna5ama
Copy link
Contributor Author

Ok so right now I am having loading performance issues with my pack then I remembered this exist. So on my pack's latest commit (d2d699ba). Preprocessing take a long time. This did make it faster.

I reload my pack 15 times while running a profiler and this is the result:
Before:
image
image
After:
image
image

As you can see from the second screenshot of each, there is some parallelism going on so it is working.
Reload time:
Before: ~750ms
After: ~250ms

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants