Skip to content

Commit

Permalink
Merge branch 'master' into khasanyanov_k_circle_topology
Browse files Browse the repository at this point in the history
  • Loading branch information
khasanyanovk authored Nov 10, 2024
2 parents d70081d + f860362 commit ec4ba01
Show file tree
Hide file tree
Showing 727 changed files with 81,515 additions and 22 deletions.
32 changes: 29 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ on:
push:
pull_request:
schedule:
- cron: '0 12 * * *'
- cron: '0 */4 * * *'
workflow_dispatch:

jobs:
ubuntu-gcc-build:
Expand Down Expand Up @@ -44,9 +45,20 @@ jobs:
env:
CC: gcc-13
CXX: g++-13
- name: Run func tests
- name: Run func tests (num_proc=2)
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=2
source scripts/run.sh
- name: Run func tests (num_proc=3)
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=3
source scripts/run.sh
- name: Run func tests (num_proc=4)
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=4
source scripts/run.sh
ubuntu-clang-build:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -85,9 +97,20 @@ jobs:
env:
CC: clang-18
CXX: clang++-18
- name: Run tests
- name: Run func tests (num_proc=2)
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=2
source scripts/run.sh
- name: Run func tests (num_proc=3)
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=3
source scripts/run.sh
- name: Run func tests (num_proc=4)
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=4
source scripts/run.sh
ubuntu-clang-sanitizer-build:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -130,6 +153,7 @@ jobs:
run: |
export OMP_NUM_THREADS=4
export ASAN_RUN=1
export PROC_COUNT=4
source scripts/run.sh
macos-clang-build:
runs-on: macOS-latest
Expand Down Expand Up @@ -163,6 +187,7 @@ jobs:
- name: Run tests
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=2
source scripts/run.sh
windows-msvc-build:
runs-on: windows-latest
Expand Down Expand Up @@ -264,6 +289,7 @@ jobs:
- name: Run tests
run: |
export OMP_NUM_THREADS=4
export PROC_COUNT=4
source scripts/run.sh
- name: Generate gcovr Coverage Data
run: |
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/perf-statistic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ name: Collect performance statistic
on:
schedule:
- cron: '0 12 * * *'
workflow_dispatch:

jobs:
ubuntu-gcc-build:
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
build
out
mpich
cmake-build-release*
cmake-build-debug*
.idea/
.vs/
.vscode/
scripts/variants.csv
scripts/variants.xlsx
venv*
sln/
CMakeSettings.json
.DS_Store
.cache
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ Navigate to a source code folder.

```
mkdir build && cd build
cmake -D USE_SEQ=ON -D USE_MPI=ON -D USE_OMP=ON -D USE_TBB=ON -D USE_STL=ON -D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON -D USE_CPPCHECK=ON -D CMAKE_BUILD_TYPE=Release ..
cmake -D USE_SEQ=ON -D USE_MPI=ON -D USE_OMP=ON -D USE_TBB=ON -D USE_STL=ON -D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON -D CMAKE_BUILD_TYPE=Release ..
```
*Help on CMake keys:*
- `-D USE_SEQ=ON` enable `Sequential` labs (based on OpenMP's CMakeLists.txt).
Expand Down
2 changes: 1 addition & 1 deletion scripts/generate_perf_results.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
mkdir build/perf_stat_dir
source scripts/run_perf_collector.sh &> build/perf_stat_dir/perf_log.txt
source scripts/run_perf_collector.sh 2>&1 | tee build/perf_stat_dir/perf_log.txt
python3 scripts/create_perf_table.py --input build/perf_stat_dir/perf_log.txt --output build/perf_stat_dir
24 changes: 14 additions & 10 deletions scripts/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ fi

if [[ -z "$ASAN_RUN" ]]; then
if [[ $OSTYPE == "linux-gnu" ]]; then
mpirun --oversubscribe -np 4 ./build/bin/sample_mpi
mpirun --oversubscribe -np 4 ./build/bin/sample_mpi_boost
mpirun --oversubscribe -np $PROC_COUNT ./build/bin/sample_mpi
mpirun --oversubscribe -np $PROC_COUNT ./build/bin/sample_mpi_boost
elif [[ $OSTYPE == "darwin"* ]]; then
mpirun -np 2 ./build/bin/sample_mpi
mpirun -np 2 ./build/bin/sample_mpi_boost
mpirun -np $PROC_COUNT ./build/bin/sample_mpi
mpirun -np $PROC_COUNT ./build/bin/sample_mpi_boost
fi
fi
./build/bin/sample_omp
Expand All @@ -37,13 +37,17 @@ fi
#fi
#echo "NUM_PROC: " $NUM_PROC

if [[ -z "$ASAN_RUN" ]]; then
if [[ $OSTYPE == "linux-gnu" ]]; then
mpirun --oversubscribe -np 4 ./build/bin/mpi_func_tests --gtest_also_run_disabled_tests --gtest_repeat=10 --gtest_recreate_environments_when_repeating
elif [[ $OSTYPE == "darwin"* ]]; then
mpirun -np 2 ./build/bin/mpi_func_tests --gtest_also_run_disabled_tests --gtest_repeat=10 --gtest_recreate_environments_when_repeating
# separate tests for debug
for test_item in $(./build/bin/mpi_func_tests --gtest_list_tests | awk '/\./{ SUITE=$1 } / / { print SUITE $1 }')
do
if [[ -z "$ASAN_RUN" ]]; then
if [[ $OSTYPE == "linux-gnu" ]]; then
mpirun --oversubscribe -np 4 ./build/bin/mpi_func_tests --gtest_filter="$test_item" --gtest_repeat=10
elif [[ $OSTYPE == "darwin"* ]]; then
mpirun -np 2 ./build/bin/mpi_func_tests --gtest_filter="$test_item" --gtest_repeat=10
fi
fi
fi
done

./build/bin/omp_func_tests --gtest_also_run_disabled_tests --gtest_repeat=10 --gtest_recreate_environments_when_repeating
./build/bin/seq_func_tests --gtest_also_run_disabled_tests --gtest_repeat=10 --gtest_recreate_environments_when_repeating
Expand Down
18 changes: 11 additions & 7 deletions scripts/run_perf_collector.sh
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
#!/bin/bash

if [[ -z "$ASAN_RUN" ]]; then
if [[ $OSTYPE == "linux-gnu" ]]; then
mpirun --oversubscribe -np 4 ./build/bin/mpi_perf_tests
elif [[ $OSTYPE == "darwin"* ]]; then
mpirun -np 2 ./build/bin/mpi_perf_tests
# separate tests for debug
for test_item in $(./build/bin/mpi_perf_tests --gtest_list_tests | awk '/\./{ SUITE=$1 } / / { print SUITE $1 }')
do
if [[ -z "$ASAN_RUN" ]]; then
if [[ $OSTYPE == "linux-gnu" ]]; then
mpirun --oversubscribe -np 4 ./build/bin/mpi_perf_tests --gtest_filter="$test_item"
elif [[ $OSTYPE == "darwin"* ]]; then
mpirun -np 2 ./build/bin/mpi_perf_tests --gtest_filter="$test_item"
fi
fi
fi
done

./build/bin/omp_perf_tests
./build/bin/seq_perf_tests
./build/bin/stl_perf_tests
Expand Down
Loading

0 comments on commit ec4ba01

Please sign in to comment.