-
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 6 replies
-
Hi @sshivank , The STL functionality is not perfect yet, but thank you for spotting this error. The problem is that the triangle data is not getting broadcasted across processors, only getting allocated here - amrex/Src/EB/AMReX_EB_STL_utils.cpp Line 243 in 4fab19a If the stl read was done by all processors, this should work fine, but that can get memory intense for large stl data. Things work fine If you turn off this line and similar in the read functions - amrex/Src/EB/AMReX_EB_STL_utils.cpp Line 98 in 4fab19a Let me see if there is a cleaner way to fix this. @WeiqunZhang - do you know of an easy amrexy way to Bcast GPU-pinnedvector of structs. Bcast(vec.dataPtr, vec.size) didn't work out. |
Beta Was this translation helpful? Give feedback.
-
@sshivank If you are interested, we have functionality for turning STLs (and other surface meshes) into signed distance fields, which lets you use the STL geometry like any other implicit function. It'll also be faster than native AMReX for larger triangle meshes since it uses a more clever lookup algorithm (AMReX goes linearly through these, I think). |
Beta Was this translation helpful? Give feedback.
Hi @sshivank ,
The STL functionality is not perfect yet, but thank you for spotting this error. The problem is that the triangle data is not getting broadcasted across processors, only getting allocated here -
amrex/Src/EB/AMReX_EB_STL_utils.cpp
Line 243 in 4fab19a
If the stl read was done by all processors, this should work fine, but that can get memory intense for large stl data. Things work fine If you turn off this line and similar in the read functions -
amrex/Src/EB/AMReX_EB_STL_utils.cpp
Line 98 in 4fab19a
Let me see if there is a cleaner way to fix this. @WeiqunZhang - do yo…