Closed dhubber closed 7 years ago
Completed first stage. Now builds tree less frequently for OpenMP or serial jobs (but not yet for MPI)
Completed tree re-builds for MPI; synchronised with the load balancing steps so total CPU cost is minimised. Should we also consider an optimisation where we build smaller tree sections (only with kd tree) and/or build the tree after a certain number of force calculations (in the case of few active particles) ??
This is still an optimisation we could consider (i.e. the partial tree re-builds). However, I don't think it will bring huge benefits and would not help with MPI scaling really so I'd be okay with closing this issue for now.
Yes I think we have other priorites at the moment. Closing the issue
Change some elements of the code to only build or re-build the tree every so often (e.g. every 8 or 16 steps) rather than every step. Will require changing synchronising with other routines, such as ghost particle creation and when particles are wrapped on domain boundaries. Will also need to fit in with MPI load-balancing steps for efficiency.