Skip to content

Tree-based neighbor search

Compare
Choose a tag to compare
@sekelle sekelle released this 12 Jun 12:24
· 151 commits to develop since this release

Performance enhancements:

  • Octree-based warp-aware neighbor searches for better performance and quasi-2D geometry support
  • Adaptive target particle groups for gravity traversal based on bounding volumes relative to volumes of local leaf cells. Avoids large traversal stacks.
  • Support for multi-level tree merges for faster octree rebalancing. Avoids a rare issue where LET updates couldn't keep up
    with changing domain boundaries. (Loss of a peer rank followed by inability to scale back the octree to the global resolution in a single step)

New features:

  • Support for particle splitting when initializing from a checkpoint file.
  • Support for initialization of rectangular domains at scale for Kelvin-Helmholtz and Wind-shock
  • Pure N-body gravity propagator
  • Coupled update of neighbor counts and smoothing lengths

Minor fixes and enhancements:

  • IAD tau determinants with normalization factors for better over/underflow resilience
  • Correct observable selection handling and settings parameter when writing and restoring from file
  • More robust initial domain synchronization that avoids the MPI_Send limit of MPI_INT32 elements per message.
  • Modify signalling velocity for larger time-steps
  • Added divergence of velocity based minDtRho criterium to time-step control
  • Added acceleration-based time-step control