Skip to content
Snippets Groups Projects

Fix pair vec

Merged James Willis requested to merge fix_pair_vec into master

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • James Willis Title changed from Fix pair vec to [WIP] Fix pair vec

    Title changed from Fix pair vec to [WIP] Fix pair vec

  • James Willis Added 1 commit:

    Added 1 commit:

    • 28cb441d - Call the branching dopair1_density function in test125cells.c.
  • Still working on it or shall I test it ?

  • Well the bit I wanted you take a look at is the failed test27cells.sh, I think it's a tolerances issue.

  • I've only tried ICC

  • GCC fails also

  • Added 1 commit:

    • 34f4318d - Code formatting. Elimination of unused variable. Missing documentation parameters.
  • Added 1 commit:

    • 78243006 - Updated tolerances for the test 27 when running with a perturbed smoothing length.
  • Alright, I have fixed the tolerances. I sometimes segfault in the test125 on my laptop. Have you seen this happen before ?

  • I was getting seg faults until I added 28cb441d. How does it only happen sometimes?

  • Sorry, it happens all the time unless I run within gdb or add printf statement to the code to figure out what goes wrong..

  • Added 1 commit:

    • 8fc942df - Missing update in the tolerance file
  • James Willis Added 2 commits:

    Added 2 commits:

    • 8b3d0d24 - Initialise particle cache for vectorisation.
    • 39af47c9 - Merge branch 'fix_pair_vec' of gitlab.cosma.dur.ac.uk:swift/swiftsim into fix_pair_vec
  • I forgot to initialise the cache in test125cells.c it should not seg fault now

  • Now I get this:

    Running ./test125cells -n 6 -r 1 -d 0.1 -v 0 -p 2 -f perturbed
    [00000.0] main: Adiabatic index: ga = 1.666667
    [00000.0] main: Hydro implementation: Gadget-2 version of SPH (Springel 2005)
    [00000.0] main: Smoothing length: h = 1.234850
    [00000.0] main: Kernel:               Cubic spline (M4)
    [00000.0] main: Neighbour target: N = 48.000916
    [00000.0] main: Density target: rho = 2.500000
    [00000.0] main: div_v target:   div = 0.000000
    [00000.0] main: curl_v target: curl = [0., 0., 0.000000]
    [00000.0] main: P field divergent
    
    [00000.1] main: SWIFT calculation took       :       138485970 ticks.
    [00000.5] main: Brute force calculation took :      1037994753 ticks.
    Tolerances read from file
    Checking the first 216 particles.
    Relative difference larger than tolerance (5.000000e-03) for particle 13468, column a_x:
        File 1:           a = -5.579833e-05
        File 2:           b = -5.682989e-05
    Difference: |a-b|/|a+b| = 9.158983e-0

    Should I expect things to have changed in the test_125 ?

  • The problem is because I've added that branching function. So test125cells now calls runner_dopair1_branch_density, which calls the scalar or vectorised dopair depending on the orientation of the cells. Whereas before, you were calling runner_dopair1_density directly which can't be done now unless you first calculate the sid and shift variables.

  • Right, but the non-vectorized version is more accurate than the vectorized one. So calling the non-vectorized one on the corners should lead to a more accurate answer over all. Or am I missing something here ?

  • Added 1 commit:

    • 0099b465 - Temporarily increased tolerance for perturbed 125 test case. Need a better difffloat.py script.
  • Matthieu Schaller Title changed from [WIP] Fix pair vec to Fix pair vec

    Title changed from [WIP] Fix pair vec to Fix pair vec

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading