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

Locking Conflicts #29

Open
SimonDanisch opened this issue Aug 13, 2024 · 3 comments
Open

Locking Conflicts #29

SimonDanisch opened this issue Aug 13, 2024 · 3 comments

Comments

@SimonDanisch
Copy link
Collaborator

Using 3 Atomics per pixel creates a ton of locking conflicts:

# Master
5.307263 seconds (251.33 M allocations: 15.794 GiB, 53.87% gc time, 356360 lock conflicts)

Not sure Immediately how to improve the situation, I guess one will need some tiling + reducers?

@anicusan
Copy link

anicusan commented Nov 4, 2024

Would using ImplicitBVH.jl be useful here? The accel directory seems to implement something fairly close to it.

@lazarusA
Copy link
Collaborator

lazarusA commented Nov 4, 2024

@SimonDanisch I see that your work here is pretty similar the link shared. Maybe @anicusan, you could take a look and see what could be ported/removed/added, etc... The makie integration is nice, however, last time I check, those allocations at the top were really just a few and the gpu integration, only Metal was failing 😢 .

@SimonDanisch
Copy link
Collaborator Author

I should have addes some context ;) The main root of lock conflict came from the SPPMIntegrator which creates one lock per pixel.
The current BVH with multi threading via KernelAbstractions has few or zero lock conflicts.

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

No branches or pull requests

3 participants