Skip to content

Latest commit

 

History

History
76 lines (40 loc) · 1.87 KB

README.md

File metadata and controls

76 lines (40 loc) · 1.87 KB

SPECFEM++ benchmarks

This repository contains workflows to generate performance benchmarks for SPECFEM++ against the original SPECFEM solvers (SPECFEM2D).

The benchmarks are generated using Snakemake.

Benchmarks

Benchmarks for 2D forward simulations :

2D forward simulations

Reproducing the benchmarks

To reproduce the benchmarks, you need to have the following dependencies installed:

  1. SPECFEM2D with a working cpu and gpu installation.
  2. SPECFEM++ with a working cpu and gpu installation.
  3. Poetry for managing python dependencies.

Once you have installed the dependencies, you can run the benchmarks using the following steps:

  1. Clone the repository:
git clone 
  1. Change to the repository directory:
cd specfempp_benchmarks
  1. Install the python dependencies:
poetry install
  1. Update the config.yaml(located within forward_simulations directory) file with the paths to the SPECFEM2D and SPECFEM++ executables.

  2. Run the benchmarks:

Note: Make sure you have access to a GPU to run GPU benchmarks.

cd forward_simulations
snakemake -j 4

If you are using a SLURM cluster, you can schedule the benchmark runs as slurm jobs using the following command:

cd forward_simulations
snakemake -j 4 --executor slurm

Warning: The benchmarks can take a long time to run depending on the number of processors.

License

License: GPL v3

SPECFEM++ benchmarks is distributed under the GPL v3 license