I started using the Metal backend (v0.6.6). It’s a !
For MPM, however, not having pointer SNodes prevents the code for running. Is there a plan for implementing them soon, or should I just rewrite my way around?
thank you!
roberto
I started using the Metal backend (v0.6.6). It’s a !
For MPM, however, not having pointer SNodes prevents the code for running. Is there a plan for implementing them soon, or should I just rewrite my way around?
thank you!
roberto
Hi Roberto,
Metal author here, thank you for the support!
For Metal, things are a bit different in that we are still trying to figure out a best way to do memory allocation inside the kernels. I wonder if you could try bitmasked
instead of pointer
? The only difference between these two are, bitmasked
pre-allocates enough memory to hold exactly the number of elements you would specify at compile time, and uses one bit per element to mark its activeness.
If this workaround doesn’t work for you (e.g. memory limitation: having a bitmasked
of n=1000
, with each element being super large is probably unrealistic. On the other hand, this is fine for pointer
because memory are dynamically allocated), then I’m afraid that Metal doesn’t yet have the proper data structure to support this use case, sorry about that… But we would also prioritize the support for other sparse data structures…
Cheers
Ye