Lock Graph Testing

Rings Testing

The timing results presented here are from the first set of runs - each was run five times using the same input file for both early and the same input file for both late steps. Each ran for ten steps. This is 'wall-clock' time as computed by the 'time' function in Linux.

Size Gravity Moonlet Graph Scale Graph Time Early Grid Time Early Graph Time Late Grid Time Late
.3 Uniform No No 2.0 - - - -
.2-2 Power Law No No 2.0 19.81 7.82 45.76 9.19
.2-2 Power Law Yes 20 2.0 87.8 56.31 704.72 762.31
.2-2 Power Law Yes 40 2.0 5876.89 1058.00 4791.93 3231.06

Variable Size with Gravity

Size Distribution .2-2

The timing results presented here are from the first set of runs - each was run five times using the same input file for both early and the same input file for both late steps. Each ran for ten steps. This is 'wall-clock' time as computed by the 'time' function. (These were run on a 16-core machine. Results may be skewed to make this simulation look faster than future ones.)

Size Gravity Moonlet Graph Scale Graph Time Early Grid Time Early Graph Time Late Grid Time Late
.2-2 Power Law Yes No 1.2 48.59 32.82 81.35 36.78
.2-2 Power Law Yes No 2.0 47.85 32.21 78.86 37.22
.2-2 Power Law Yes No 4.0 40.62 32.19 48.46 37.1
.2-2 Power Law Yes No 6.0 36.35 32.5 38.82 37.54
.2-2 Power Law Yes No 8.0 34.62 32.62 38.15 36.79

Moonlet Size 20

Size Gravity Moonlet Graph Scale Graph Time Early Grid Time Early Graph Time Late Grid Time Late
.2-2 Power Law Yes 20 1.2 77.54 61.91 91.14 46.6
.2-2 Power Law Yes 20 2.0 98.36 61.26 89.64 46.98
.2-2 Power Law Yes 20 4.0 102.71 60.71 58.67 46.25
.2-2 Power Law Yes 20 6.0 62.74 60.38 50.51 47.05
.2-2 Power Law Yes 20 8.0 96.53 60.89 48.97 47.36

Uniform Size Without Gravity

Single Size .3

These timing results are from the second set of timing tests. It was run on a 4-core machine, so overall runtime may be slower than other timing results. Note that in this run the graph code is clearly slower.

point3nogravitygraphgrid.png

Notes from Dr. Lewis

  • Here's a real test of the Wiki. Let's see if Cameron notices this comment. Remember that if the graph has any benefit, it will be to preserve parallelism. As such, you probably want to do all of your final speed tests on Dione00 with 16 cores. We know the graph is slower to build and probably to use (though the use speed depends on connectivity which we can vary with some different parameters). The only way the graph can help is to allow more things to happen in parallel that the grid prevents. So you would have to have a really extreme case for the graph to be better on a 4-core machine.
  • Another thought! The graph might be superior for non-uniformly distributed particles. I started a simulation with a Gaussian distribution and it reminded me of this.