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

[Design change] Voxelize larnd-sim #232

Open
YifanC opened this issue May 17, 2024 · 0 comments
Open

[Design change] Voxelize larnd-sim #232

YifanC opened this issue May 17, 2024 · 0 comments

Comments

@YifanC
Copy link
Collaborator

YifanC commented May 17, 2024

Paraphrasing (largely copy-paste) Kazu's suggestion here:

Voxelize the entire TPC region instead of using segments for drifting. GPU is designed to execute massively parallelizable computation, in particular the matrix multiplication. Processors are advancing towards increasing memory size and bandwidth rather than making smarter use of individual cores. We can utilize sparse tensor to tackle the problem. With the current version, we use segments as a base and then convert it into pixels (some 2D voxelization). The indexing map between segments and pixels need be computed and carried around. We have to write cuda kernels for each index conversion. It increases the manual work, reduces the readibility and is prong to errors. It can be incompatible with batching capability that is often deployed in GPU computation. Rewriting using sparse tensors would allow us to use community developed functions. We can have full vectorization without writing our own kernels every step. Potentially you can batch the time dimension. (I didn't understand this part. I also think it makes backtracking easier.) This would make larndsim more readable and more extendable.

I think it's a cool project. It's a bigger step than #231. Again I'm interested in this project, but cannot promise time at the moment. There is no name tag on these (organic development). Whoever has the interest and time should try it. Tag people who might be interested here @jaafar-chakrani @mjkramer.

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

1 participant