Hi,
We are running ShapeWorks on datasets containing thousands of shapes and have noticed a cubic runtime growth with the number of shapes, and 100 iterations can take several days. Could you please share any insights into the potential bottleneck, and how we could accelerate the optimization for large-scale datasets if possible?
The main process appears to use only one CPU core (%CPU around 99.7%) most of the time:
shapeworks optimize --progress --name ../ssm/custom_multiscale.swproj
However, when running it on smaller datasets, we observe higher CPU utilization and more frequent use of multiple cores. This makes us wonder whether the single-core behavior for larger datasets is expected, or whether it could be improved through ways such as configuration changes.
The swproj configuration file (for ShapeWorks-6.6.1, incremental optimization) is
{
"data": \[ { "name": "", "notes": "", "shape_1": "../seg/2984739_sag_3d_pd_space__0\_.stl", "landmarks_file_1": "custom_multiscale_particles/2984739_sag_3d_pd_space__0\_.stl_local.particles", "groomed_1": "groomed/meshes/2984739_sag_3d_pd_space__0\_.stl.vtk", "alignment_1": "0.991719 -0.014045 0.017912 -0.118646 0.013786 0.991780 0.014405 -0.048738 -0.018112 -0.014152 0.991714 -0.381316 0.000000 0.000000 0.000000 1.000000", "fixed": "no" }, ... \], "groom": { "1": {} }, "optimize": { "number_of_particles": "256", "use_normals": "0", "normals_strength": "10", "checkpointing_interval": "1000", "keep_checkpoints": "0", "iterations_per_split": "0", "optimization_iterations": "1000", "starting_regularization": "1000", "ending_regularization": "10", "relative_weighting": "1", "initial_relative_weighting": "0.05", "procrustes": "1", "procrustes_interval": "10", "procrustes_scaling": "1", "save_init_splits": "0", "verbosity": "0", "multiscale": "0", "multiscale_particles": "256", "use_landmarks": "1" }, "studio": {}, "project": { "version": "2" }, "analysis": {}, "deepssm": {}, "landmarks": \[\]}
Thank you very much for your time. We would greatly appreciate any guidance or recommendations you may have.