diff --git a/testing/benchmarking/bench_100x100x100.in b/testing/benchmarking/bench_100x100x100.in deleted file mode 100644 index d8e7ac1e..00000000 --- a/testing/benchmarking/bench_100x100x100.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.1 0.1 0.1 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 \ No newline at end of file diff --git a/testing/benchmarking/bench_150x150x150.in b/testing/benchmarking/bench_150x150x150.in deleted file mode 100644 index 0c5a455d..00000000 --- a/testing/benchmarking/bench_150x150x150.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.15 0.15 0.15 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 \ No newline at end of file diff --git a/testing/benchmarking/bench_200x200x200.in b/testing/benchmarking/bench_200x200x200.in deleted file mode 100644 index 7ad56dc6..00000000 --- a/testing/benchmarking/bench_200x200x200.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.2 0.2 0.2 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 \ No newline at end of file diff --git a/testing/benchmarking/bench_300x300x300.in b/testing/benchmarking/bench_300x300x300.in deleted file mode 100644 index e734a2d2..00000000 --- a/testing/benchmarking/bench_300x300x300.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.3 0.3 0.3 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 diff --git a/testing/benchmarking/bench_400x400x400.in b/testing/benchmarking/bench_400x400x400.in deleted file mode 100644 index 3558d815..00000000 --- a/testing/benchmarking/bench_400x400x400.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.4 0.4 0.4 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 diff --git a/testing/benchmarking/bench_450x450x450.in b/testing/benchmarking/bench_450x450x450.in deleted file mode 100644 index 8063c823..00000000 --- a/testing/benchmarking/bench_450x450x450.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.45 0.45 0.45 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 diff --git a/testing/benchmarking/bench_500x500x500.in b/testing/benchmarking/bench_500x500x500.in deleted file mode 100644 index 96affc39..00000000 --- a/testing/benchmarking/bench_500x500x500.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.5 0.5 0.5 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 diff --git a/testing/benchmarking/bench_600x600x600.in b/testing/benchmarking/bench_600x600x600.in deleted file mode 100644 index 0ed93053..00000000 --- a/testing/benchmarking/bench_600x600x600.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.6 0.6 0.6 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 diff --git a/testing/benchmarking/bench_700x700x700.in b/testing/benchmarking/bench_700x700x700.in deleted file mode 100644 index 67c371d5..00000000 --- a/testing/benchmarking/bench_700x700x700.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.7 0.7 0.7 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 diff --git a/testing/benchmarking/bench_800x800x800.in b/testing/benchmarking/bench_800x800x800.in deleted file mode 100644 index 06b102af..00000000 --- a/testing/benchmarking/bench_800x800x800.in +++ /dev/null @@ -1,7 +0,0 @@ -#domain: 0.8 0.8 0.8 -#dx_dy_dz: 0.001 0.001 0.001 -#time_window: 3e-9 - -#waveform: gaussiandotnorm 1 900e6 MySource -#hertzian_dipole: x 0.05 0.05 0.05 MySource -#rx: 0.05 0.05 0.05 diff --git a/testing/benchmarking/bench_simple.py b/testing/benchmarking/bench_simple.py new file mode 100644 index 00000000..9688ca56 --- /dev/null +++ b/testing/benchmarking/bench_simple.py @@ -0,0 +1,54 @@ +"""A series of models with different domain sizes used for benchmarking. + The domain is free space with a simple source (Hertzian Dipole) and + receiver at the centre. +""" + +from pathlib import Path +import gprMax + +# File path for output +fn = Path(__file__) + +# Cube side lengths (in cells) for different domains +domains = [0.10, 0.15, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80] + +# Number of OpenMP threads to benchmark each domain size +ompthreads = [1, 2, 4, 8, 16, 32, 64, 128] + +scenes = [] + +for d in domains: + for threads in ompthreads: + + # Discretisation + dl = 0.001 + + # Domain + x = d + y = x + z = x + + scene = gprMax.Scene() + + title = gprMax.Title(name=fn.with_suffix('').name) + domain = gprMax.Domain(p1=(x, y, z)) + dxdydz = gprMax.Discretisation(p1=(dl, dl, dl)) + time_window = gprMax.TimeWindow(time=3e-9) + wv = gprMax.Waveform(wave_type='gaussiandotnorm', amp=1, freq=900e6, + id='MySource') + src = gprMax.HertzianDipole(p1=(x/2, y/2, z/2), polarisation='x', + waveform_id='MySource') + + omp = gprMax.OMPThreads(n=threads) + + scene.add(title) + scene.add(domain) + scene.add(dxdydz) + scene.add(time_window) + scene.add(wv) + scene.add(src) + scene.add(omp) + scenes.append(scene) + +# Run model +gprMax.run(scenes=scenes, n=len(scenes), geometry_only=False, outputfile=fn, gpu=None) \ No newline at end of file