Skip to content

Commit 3c9fffb

Browse files
Merge pull request #128 from PrincetonUniversity/devel
SPECFEM++ 0.2.0 release - RC
2 parents d199e41 + fc8d4b5 commit 3c9fffb

File tree

1,411 files changed

+256601
-20735
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,411 files changed

+256601
-20735
lines changed

.github/workflows/unittests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ jobs:
1414
run: git submodule init
1515
&& git submodule update
1616
- name: Configure
17-
run: cmake -S . -B build -DBUILD_TESTS=ON
17+
run: cmake -S . -B build -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTS=ON
1818
- name: Build
1919
run: cmake --build build
2020
- name: Run all tests
2121
run: cd build/tests/unit-tests
22-
&& ctest
22+
&& ctest --verbose

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,7 @@ examples/*/Par_File
2323
*.sqlite
2424
*.nsys-rep
2525
*.ncu-rep
26+
.snakemake/
27+
autotuning/
28+
profiles
29+
.cache/

.jenkins/compiler_checks.gvy

Lines changed: 0 additions & 133 deletions
This file was deleted.

.jenkins/gnu_compiler_checks.gvy

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
pipeline{
2+
agent {
3+
node {
4+
label 'della_rk9481'
5+
}
6+
}
7+
stages{
8+
stage( ' Load git modules ' ){
9+
steps {
10+
echo ' Getting git submodules '
11+
sh 'git submodule init'
12+
sh 'git submodule update'
13+
}
14+
}
15+
stage(' GNU Host Compiler Check '){
16+
matrix {
17+
axes {
18+
axis{
19+
name 'GNUCompiler'
20+
values 'GCC8;gcc/8', 'GCC13;gcc-toolset/13'
21+
}
22+
axis{
23+
name 'SIMD'
24+
values 'SIMD_NONE;-DENABLE_SIMD=OFF', 'SIMD_NATIVE;-DENABLE_SIMD=ON -DKokkos_ARCH_NATIVE=ON -DKokkos_ENABLE_AGGRESSIVE_VECTORIZATION=ON'
25+
}
26+
axis{
27+
name 'HostSpace'
28+
values 'SERIAL;-DKokkos_ENABLE_SERIAL=ON -DKokkos_ENABLE_ATOMICS_BYPASS=ON;-n 1', 'OPENMP;-DKokkos_ENABLE_OPENMP=ON;-n 10'
29+
}
30+
}
31+
stages {
32+
stage ('Build and Clean '){
33+
environment {
34+
// CMAKE build flags
35+
GNU_COMPILER_NAME = """${sh(
36+
returnStdout: true,
37+
script: 'cut -d";" -f1 <<<"${GNUCompiler}"'
38+
).trim()}"""
39+
GNU_COMPILER_MODULE = """${sh(
40+
returnStdout: true,
41+
script: 'cut -d";" -f2 <<<"${GNUCompiler}"'
42+
).trim()}"""
43+
CMAKE_HOST_NAME = """${sh(
44+
returnStdout: true,
45+
script: 'cut -d";" -f1 <<<"${HostSpace}"'
46+
).trim()}"""
47+
CMAKE_HOST_FLAGS = """${sh(
48+
returnStdout: true,
49+
script: 'cut -d";" -f2 <<<"${HostSpace}"'
50+
).trim()}"""
51+
HOST_RUN_FLAGS = """${sh(
52+
returnStdout: true,
53+
script: 'cut -d";" -f3 <<<"${HostSpace}"'
54+
).trim()}"""
55+
SIMD_NAME = """${sh(
56+
returnStdout: true,
57+
script: 'cut -d";" -f1 <<<"${SIMD}"'
58+
).trim()}"""
59+
SIMD_FLAGS = """${sh(
60+
returnStdout: true,
61+
script: 'cut -d";" -f2 <<<"${SIMD}"'
62+
).trim()}"""
63+
}
64+
stages {
65+
stage (' Build '){
66+
steps {
67+
echo "Building ${CMAKE_HOST_FLAGS} ${SIMD_FLAGS} with ${GNU_COMPILER_NAME}"
68+
sh """
69+
module load boost/1.73.0
70+
module load ${GNU_COMPILER_MODULE}
71+
cmake3 -S . -B build_cpu_${GNU_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT} -DCMAKE_BUILD_TYPE=Release ${CMAKE_HOST_FLAGS} ${SIMD_FLAGS} -DBUILD_TESTS=ON
72+
cmake3 --build build_cpu_${GNU_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT}
73+
"""
74+
echo ' Build completed '
75+
}
76+
}
77+
stage (' Test '){
78+
steps {
79+
echo ' Testing '
80+
sh """
81+
module load boost/1.73.0
82+
module load ${GNU_COMPILER_MODULE}
83+
cd build_cpu_${GNU_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT}/tests/unit-tests
84+
srun -N 1 -t 00:20:00 ${HOST_RUN_FLAGS} --constraint=skylake bash -c 'export OMP_PROC_BIND=spread; export OMP_THREADS=places; ctest --verbose;'
85+
"""
86+
echo ' Testing completed '
87+
}
88+
}
89+
}
90+
post {
91+
always {
92+
echo ' Cleaning '
93+
sh "rm -rf build_cpu_${GNU_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT}"
94+
}
95+
}
96+
}
97+
}
98+
}
99+
}
100+
}
101+
}

.jenkins/intel_compiler_checks.gvy

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
pipeline{
2+
agent {
3+
node {
4+
label 'della_rk9481'
5+
}
6+
}
7+
stages{
8+
stage( ' Load git modules ' ){
9+
steps {
10+
echo ' Getting git submodules '
11+
sh 'git submodule init'
12+
sh 'git submodule update'
13+
}
14+
}
15+
stage(' Intel Host Compiler Check '){
16+
matrix {
17+
axes {
18+
axis{
19+
name 'IntelCompiler'
20+
values 'ICC2022;intel/2022.2.0', 'ICC2024;intel/2024.0.2'
21+
}
22+
axis{
23+
name 'HostSpace'
24+
values 'SERIAL;-DKokkos_ENABLE_SERIAL=ON -DKokkos_ENABLE_ATOMICS_BYPASS=ON;-n 1', 'OPENMP;-DKokkos_ENABLE_OPENMP=ON;-n 10'
25+
}
26+
axis{
27+
name 'SIMD'
28+
values 'SIMD_NONE;-DENABLE_SIMD=OFF', 'SIMD_NATIVE;-DENABLE_SIMD=ON -DKokkos_ARCH_NATIVE=ON -DKokkos_ENABLE_AGGRESSIVE_VECTORIZATION=ON'
29+
}
30+
}
31+
stages {
32+
stage ('Build and Clean '){
33+
environment {
34+
INTEL_COMPILER_NAME = """${sh(
35+
returnStdout: true,
36+
script: 'cut -d";" -f1 <<<"${IntelCompiler}"'
37+
).trim()}"""
38+
INTEL_MODULE = """${sh(
39+
returnStdout: true,
40+
script: 'cut -d";" -f2 <<<"${IntelCompiler}"'
41+
).trim()}"""
42+
CMAKE_HOST_NAME = """${sh(
43+
returnStdout: true,
44+
script: 'cut -d";" -f1 <<<"${HostSpace}"'
45+
).trim()}"""
46+
CMAKE_HOST_FLAGS = """${sh(
47+
returnStdout: true,
48+
script: 'cut -d";" -f2 <<<"${HostSpace}"'
49+
).trim()}"""
50+
HOST_RUN_FLAGS = """${sh(
51+
returnStdout: true,
52+
script: 'cut -d";" -f3 <<<"${HostSpace}"'
53+
).trim()}"""
54+
SIMD_NAME = """${sh(
55+
returnStdout: true,
56+
script: 'cut -d";" -f1 <<<"${SIMD}"'
57+
).trim()}"""
58+
SIMD_FLAGS = """${sh(
59+
returnStdout: true,
60+
script: 'cut -d";" -f2 <<<"${SIMD}"'
61+
).trim()}"""
62+
}
63+
stages {
64+
stage (' Build '){
65+
steps {
66+
echo "Building ${CMAKE_HOST_FLAGS} ${SIMD_FLAGS} with ${INTEL_COMPILER_NAME}"
67+
sh """
68+
module load boost/1.73.0
69+
module load ${INTEL_MODULE}
70+
export CC=icx
71+
export CXX=icpx
72+
cmake3 -S . -B build_cpu_${INTEL_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT} -DCMAKE_BUILD_TYPE=Release ${CMAKE_HOST_FLAGS} ${SIMD_FLAGS} -D BUILD_TESTS=ON
73+
cmake3 --build build_cpu_${INTEL_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT}
74+
"""
75+
echo ' Build completed '
76+
}
77+
}
78+
stage (' Test '){
79+
steps {
80+
echo ' Testing '
81+
sh """
82+
module load boost/1.73.0
83+
module load ${INTEL_MODULE}
84+
cd build_cpu_${INTEL_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT}/tests/unit-tests
85+
srun -N 1 -t 00:20:00 ${HOST_RUN_FLAGS} --constraint=skylake bash -c 'export OMP_PROC_BIND=spread; export OMP_THREADS=places; ctest --verbose;'
86+
"""
87+
echo ' Testing completed '
88+
}
89+
}
90+
}
91+
post {
92+
always {
93+
echo ' Cleaning '
94+
sh "rm -rf build_cpu_${INTEL_COMPILER_NAME}_${CMAKE_HOST_NAME}_${SIMD_NAME}_${env.GIT_COMMIT}"
95+
}
96+
}
97+
}
98+
}
99+
}
100+
}
101+
}
102+
}

0 commit comments

Comments
 (0)