SPHinXsys provides C++ APIs for engineering simulation and optimization. It aims at complex systems driven by fluid, structure, multi-body dynamics and beyond. The multi-physics library is based on a unique and unified computational framework by which strong coupling has been achieved for all involved physics.
Added supplementary implementations for 3d methods
Allocated size of CellLinkedListKernel::index_head_list_ is now generalized for any dimension, instead of defaulting to the 2d case
Allocation size of NeighborhoodDevice has been increased for 3d builds
Added test case for 3d dambreak with SYCL execution policy
This test case has been written by simply applying the same changes of 2d_dambreak_sycl to 3d_dambreak, nevertheless it has been included to make results more easily reproducible. Alternatively, only one between 2d_dambreak_sycl and 3d_dambreak_sycl could be left as an example for SYCL execution, since they both contain the same changes.
Benchmark
3d dambreak executed with default parameters and single fp precision:
Reference TBB execution: Total wall time for computation: 37.749652628 seconds.
SYCL execution: Total wall time for computation: 9.485423699 seconds.
Changes
CellLinkedListKernel::index_head_list_
is now generalized for any dimension, instead of defaulting to the 2d caseNeighborhoodDevice
has been increased for 3d buildsBenchmark
3d dambreak executed with default parameters and single fp precision:
Total wall time for computation: 37.749652628 seconds.
Total wall time for computation: 9.485423699 seconds.