Skip to content

Latest commit

 

History

History
62 lines (47 loc) · 3.11 KB

CHANGELOG.md

File metadata and controls

62 lines (47 loc) · 3.11 KB

Change Log

0.3.0

New Features

  • Updated Kokkos dependency to version 3.1
  • CUDA and HIP support and testing in continuous integration
  • Mirror view capability for AoSoA
  • New performance benchmarks for sorting, communication, and neighbor lists
  • Improving AoSoA memory managment with empty() and shrinkToFit()
  • Second level neighbor parallel for and reduce algorithms for triplet operations
  • Unmanaged AoSoA for wrapping user memory

Bug Fixes and Improvements

  • Using new CMake target for linking Kokkos
  • Removed numerous instances of default allocation of Kokkos Views
  • Eliminated use of user-defined MPI tags in communication algorithms
  • Cleaned usage of deprecated Kokkos code
  • Update for compilation with C++14
  • Significant performance enhancements to communication code

Experimental Features (subject to change in future releases)

  • Tree-based neighbor lists using ArborX

0.2.0

New Features

  • An optional MPI dependency has been added. Note that when CUDA is enabled the MPI implementation is expected to be CUDA-aware. #45
  • Particle redistribution via MPI. Implemented in the Cabana::Distributor #43
  • Particle halo exchange via MPI. Implemented in the Cabana::Halo #43
  • Parallel for concept for 2D indexing in AoSoA loops. Implemented via Cabana::simd_parallel_for. Includes a new execution space concept Cabana::SimdPolicy. #49
  • Parallel for concept for traversing neighbor lists. Implemented via Cabana::neighbor_parallel_for #49
  • Continuous integration for pull requests via GitHub #9
  • Support the ECP continuous integration infrastructure #66
  • New example using scafacos for long-range solvers #46
  • Additional tutorials documentation on the Wiki

Bug Fixes and Improvements

  • Fixed a bug in the construction of slices on uninitialized AoSoA containers #80
  • Construct Verlet lists over the specified range of indices #70
  • Removed aliases of Kokkos macros and classes #58

0.1.0

New Features

  • Core portable data structures: Tuple, SoA, AoSoA, and Slice
  • DeepCopy: deep copy of data between AoSoA data structures
  • Sorting and binning AoSoA data structures
  • LinkedCellList: linked cell list implementation
  • Portable neighbor list interface
  • VerletList - linked cell accelerated Verlet list implementation
  • Basic tutorial

Experimental Features (subject to change in future releases)

  • parallel_for - portable parallel loops over supported execution spaces
  • neighbor_parallel_for - portable parallel loops over neighbor lists in supported execution spaces
  • RangePolicy - defines an index range for parallel loops