Replies: 5 comments 1 reply
-
I have thought about it a bit here #151 (there are a lot more papers not linked to in that thread, the linked paper is probably more complex than what is needed to just get basic multithreading support) I agree that it would be very nice to have multi-threading, it's just not so simple to implement. Maybe eventually I can get around to thinking a bit more about it. |
Beta Was this translation helpful? Give feedback.
-
Also note that another really good way to improve the mesh generation time is to use spatial sorting on your points to optimise the insertion order. I've not got a good example of that yet but it is usually recommended. An implementation of spatial sorting would be needed to get a good parallel implementation as well. |
Beta Was this translation helpful? Give feedback.
-
One idea for parallelising the unconstrained triangulation stage is:
|
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
FYI, I'm slowly working on v2.0 in https://github.com/JuliaGeometry/DelaunayTriangulation.jl/tree/v2 where a lot of speed improvements will be made. It reduces the allocations by like 99% (literally) as well, and spatial sorting is almost done (not committed into the branch yet). If you want to try it out maybe you can help see if that branch has improved the computation time of your problem @zkk960317, and maybe again once spatial sorting is actually done (which can improve runtime by a crazy amount). [Maybe your code can be run without changes, but in case it can't see https://github.com/JuliaGeometry/DelaunayTriangulation.jl/blob/v2/NEWS.md#v20 for possible fixes] You can also submit code that generates your mesh and maybe I can try and profile it to help see what else I can improve for v2.0 if you like. |
Beta Was this translation helpful? Give feedback.
-
I generated a mesh in 517 seconds and the CPU was only used 10% on average. Multi-threading would speed up the computation significantly!
Beta Was this translation helpful? Give feedback.
All reactions