Skip to content
Snippets Groups Projects
Commit d5f4ff00 authored by Cedric Jourdain's avatar Cedric Jourdain 🐵
Browse files

Update README_ACC.md

parent 0683ce65
Branches
Tags
No related merge requests found
......@@ -10,12 +10,19 @@ Clone the repository in a location of your choice, let's say $HOME.
cd $HOME
git clone https://github.com/geodynamics/specfem3d_globe.git
```
Also get the test case from git (in you $HOME again):
Then use a fixed and stable version of specfem3D_globe (the one of October 31, 2017
for example, see https://github.com/geodynamics/specfem3d_globe/commits/master)
```shell
cd $HOME/specfem3d_globe
git checkout b1d6ba966496f269611eff8c2cf1f22bcdac2bd9
```
If this is not done, clone the ueabs repository.
```shell
cd $HOME
git clone https://github.com/MisterFruits/bench_spec
git clone https://repository.prace-ri.eu/git/UEABS/ueabs.git
```
In the specfem3D folder of this repo, you will find test cases in the test_cases folder,
you will also find environment and submission scripts templates for several machines
## Load the environment
......@@ -49,7 +56,9 @@ export MPICC=`which mpicc`
export CUDA_LIB="$CUDAROOT/lib64"
export CUDA_INC="$CUDAROOT/include"
```
Once again, you will find in the specfem3D folder of this repo a folder name env,
with file name env_x which gives examples of the environment used on several supercomputers
during the last benchmark campaign
## Compile specfem
As arrays are staticaly declared, you will need to compile specfem once for each
......@@ -95,22 +104,16 @@ make clean
make all
```
## Launch specfem
The launch procedure is simplified by the `run_mesher_solver.bash` script included
with tests cases. You just have to simlink some parameters file and binaries before launching it:
**-> You will find in the specfem folder of ueabs repository the file "compile.sh" which is an compilation script template for several machines (different architectures : KNL, SKL, Haswell and GPU)**
```
cd $HOME/bench_spec/test_case_${test_case_id}/DATA
ln -s $HOME/specfem3d_globe/DATA/crust2.0
ln -s $HOME/specfem3d_globe/DATA/s362ani
ln -s $HOME/specfem3d_globe/DATA/QRFSI12
ln -s $HOME/specfem3d_globe/DATA/topo_bathy
## Launch specfem
ln -s $HOME/specfem_compil_${test_case_id}/bin
You can use or be inspired by the submission script template in the job_script folder using the appropriate job submission command :
- qsub for pbs job,
- sbatch for slurm job,
- ccc_msub for irene job (wrapper),
- llsubmit for LoadLeveler job.
sbatch -J specfem -N 1 --ntasks=24 --cpus-per-task=2 -t 01:00:0 --mem=150GB run_mesher_solver.bash
```
## Gather results
......@@ -118,8 +121,8 @@ The relevant metric for this benchmark is time for the solver. Using slurm, it i
easy to gather as each `mpirun` or `srun` is interpreted as a step wich is already
timed. So the command line `sacct -j <job_id>` allows you to catch the metric.
Otherwise edit the `run_mesher_solver.bash` script and add the time command befor the
call to the solver.
Or you can find more precise timing info at the end of this output file : specfem3d_globe/OUTPUT_FILES/output_solver.txt
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment