Mesh generation parallelization

Hi,

I’d like to know if it’s possible to parallelize mesh generation in Cubit, is it possible?

Thanks.

Rocco

There is limited functionality for parallel mesh generation in Coreform Cubit.

  1. The tetmesh scheme defaults to a multi-threaded algorithm, but you can toggle it to do single-threaded compute. In the screenshot below the Use Serial Tet Mesher button issues the command set tetmesher hpc [ON|off]:

  2. You can issue parallel Sculpt commands in the GUI.

In general, parallelizing mesh generation is a fairly-difficult task – though we have discussed internally some potential strategies to parallelize certain cases. For example - discontinuous regions (e.g., unmerged volumes) could be meshed independently of each other and thus could be parallelized. In a former work-life, I had done something similar – I used Python scripting to find “independent regions”, launch multiple instances of (Sandia’s) Cubit to mesh each of these regions, save to multiple .cub5 files, and then import each .cub5 file back into a single Cubit session. This doesn’t help, however, if you have a single region where you want, e.g., 100M hexes to be generated in parallel.

I probably wouldn’t be able to recreate this workflow until later this week, but if you’re interested in giving it a try it should be relatively straightforward – I recommend the NetworkX Python module (I gave a demonstration of using NetworkX with Cubit here). You’d use NetworkX to construct a graph of the BREP topology with the merged entities to identify connected (merged) regions.

1 Like