44
44
sudo apt-get update
45
45
sudo apt-get install gcc-13 g++-13
46
46
sudo apt-get install ninja-build
47
- sudo apt-get install mpich libmpich* mpi* openmpi-bin
47
+ sudo apt-get install mpich
48
48
sudo apt-get install libomp-dev
49
49
sudo apt-get install valgrind
50
50
python3 -m pip install xlsxwriter
@@ -69,21 +69,30 @@ jobs:
69
69
env :
70
70
CC : gcc-13
71
71
CXX : g++-13
72
+ - name : Run func tests (MPI, num_proc=1)
73
+ run : |
74
+ source scripts/run_mpi.sh
75
+ env :
76
+ PROC_COUNT : 1
77
+ OMP_NUM_THREADS : 3
72
78
- name : Run func tests (MPI, num_proc=2)
73
79
run : |
74
80
source scripts/run_mpi.sh
75
81
env :
76
82
PROC_COUNT : 2
83
+ OMP_NUM_THREADS : 2
77
84
- name : Run func tests (MPI, num_proc=3)
78
85
run : |
79
86
source scripts/run_mpi.sh
80
87
env :
81
88
PROC_COUNT : 3
89
+ OMP_NUM_THREADS : 1
82
90
- name : Run func tests (MPI, num_proc=4)
83
91
run : |
84
92
source scripts/run_mpi.sh
85
93
env :
86
94
PROC_COUNT : 4
95
+ OMP_NUM_THREADS : 1
87
96
- name : Run func tests (threads, num_threads=1)
88
97
run : source scripts/run_threads.sh
89
98
env :
@@ -114,7 +123,7 @@ jobs:
114
123
sudo apt-get update
115
124
sudo apt-get install gcc-13 g++-13
116
125
sudo apt-get install ninja-build
117
- sudo apt-get install mpich libmpich* mpi* openmpi-bin
126
+ sudo apt-get install mpich
118
127
sudo apt-get install libomp-dev
119
128
sudo apt-get install valgrind
120
129
python3 -m pip install xlsxwriter
@@ -185,7 +194,7 @@ jobs:
185
194
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
186
195
sudo apt-get update
187
196
sudo apt-get install ninja-build
188
- sudo apt-get install mpich libmpich* mpi* openmpi-bin
197
+ sudo apt-get install mpich
189
198
sudo apt-get install python3-pip
190
199
sudo apt-get install valgrind
191
200
wget https://apt.llvm.org/llvm.sh
@@ -211,21 +220,30 @@ jobs:
211
220
env :
212
221
CC : clang-19
213
222
CXX : clang++-19
223
+ - name : Run func tests (MPI, num_proc=1)
224
+ run : |
225
+ source scripts/run_mpi.sh
226
+ env :
227
+ PROC_COUNT : 1
228
+ OMP_NUM_THREADS : 3
214
229
- name : Run func tests (MPI, num_proc=2)
215
230
run : |
216
231
source scripts/run_mpi.sh
217
232
env :
218
233
PROC_COUNT : 2
234
+ OMP_NUM_THREADS : 2
219
235
- name : Run func tests (MPI, num_proc=3)
220
236
run : |
221
237
source scripts/run_mpi.sh
222
238
env :
223
239
PROC_COUNT : 3
240
+ OMP_NUM_THREADS : 1
224
241
- name : Run func tests (MPI, num_proc=4)
225
242
run : |
226
243
source scripts/run_mpi.sh
227
244
env :
228
245
PROC_COUNT : 4
246
+ OMP_NUM_THREADS : 1
229
247
- name : Run tests (threads, num_threads=1)
230
248
run : source scripts/run_threads.sh
231
249
env :
@@ -255,7 +273,7 @@ jobs:
255
273
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
256
274
sudo apt-get update
257
275
sudo apt-get install ninja-build
258
- sudo apt-get install mpich libmpich* mpi* openmpi-bin
276
+ sudo apt-get install mpich
259
277
sudo apt-get install python3-pip
260
278
sudo apt-get install valgrind
261
279
wget https://apt.llvm.org/llvm.sh
@@ -355,9 +373,10 @@ jobs:
355
373
- name : Run tests (MPI)
356
374
run : |
357
375
export ASAN_RUN=1
358
- source scripts/run_mpi.sh
376
+ source scripts/run_mpi.sh "--oversubscribe"
359
377
env :
360
378
PROC_COUNT : 2
379
+ OMP_NUM_THREADS : 2
361
380
- name : Run tests (threads, num_threads=1)
362
381
run : source scripts/run_threads.sh
363
382
env :
@@ -489,21 +508,30 @@ jobs:
489
508
- name : Ninja build
490
509
run : |
491
510
cmake --build build
511
+ - name : Run func tests (MPI, num_proc=1)
512
+ run : |
513
+ source scripts/run_mpi.sh
514
+ env :
515
+ PROC_COUNT : 1
516
+ OMP_NUM_THREADS : 3
492
517
- name : Run func tests (MPI, num_proc=2)
493
518
run : |
494
519
source scripts/run_mpi.sh
495
520
env :
496
521
PROC_COUNT : 2
522
+ OMP_NUM_THREADS : 2
497
523
- name : Run func tests (MPI, num_proc=3)
498
524
run : |
499
525
source scripts/run_mpi.sh
500
526
env :
501
527
PROC_COUNT : 3
528
+ OMP_NUM_THREADS : 1
502
529
- name : Run func tests (MPI, num_proc=4)
503
530
run : |
504
531
source scripts/run_mpi.sh
505
532
env :
506
533
PROC_COUNT : 4
534
+ OMP_NUM_THREADS : 1
507
535
- name : Run tests (threads, num_threads=1)
508
536
run : source scripts/run_threads.sh
509
537
env :
@@ -596,7 +624,9 @@ jobs:
596
624
with :
597
625
submodules : recursive
598
626
- name : Add msbuild to PATH
599
-
627
+ uses : microsoft/setup-msbuild@v2
628
+ with :
629
+ vs-version : ' latest'
600
630
- name : Setup MPI
601
631
uses : mpi4py/setup-mpi@v1
602
632
with :
@@ -608,10 +638,14 @@ jobs:
608
638
uses : Chocobo1/setup-ccache-action@v1
609
639
with :
610
640
windows_compile_environment : msvc
641
+ - name : Setup ninja
642
+ uses : seanmiddleditch/gha-setup-ninja@master
643
+ - name : Setup MSVC for Ninja again
644
+ uses : ilammy/msvc-dev-cmd@v1
611
645
- name : CMake configure
612
646
shell : bash
613
647
run : >
614
- cmake -S . -B build
648
+ cmake -S . -B build -G Ninja -D CMAKE_C_COMPILER=cl -DCMAKE_CXX_COMPILER=cl
615
649
-D CMAKE_C_COMPILER_LAUNCHER=ccache -D CMAKE_CXX_COMPILER_LAUNCHER=ccache
616
650
-D USE_SEQ=ON -D USE_MPI=ON -D USE_OMP=ON -D USE_TBB=ON -D USE_STL=ON
617
651
-D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON
@@ -648,7 +682,9 @@ jobs:
648
682
with :
649
683
submodules : recursive
650
684
- name : Add msbuild to PATH
651
-
685
+ uses : microsoft/setup-msbuild@v2
686
+ with :
687
+ vs-version : ' latest'
652
688
- name : Setup MPI
653
689
uses : mpi4py/setup-mpi@v1
654
690
with :
@@ -660,10 +696,14 @@ jobs:
660
696
uses : Chocobo1/setup-ccache-action@v1
661
697
with :
662
698
windows_compile_environment : msvc
699
+ - name : Setup ninja
700
+ uses : seanmiddleditch/gha-setup-ninja@master
701
+ - name : Setup MSVC for Ninja again
702
+ uses : ilammy/msvc-dev-cmd@v1
663
703
- name : CMake configure
664
704
shell : bash
665
705
run : >
666
- cmake -S . -B build
706
+ cmake -S . -B build -G Ninja -D CMAKE_C_COMPILER=cl -DCMAKE_CXX_COMPILER=cl
667
707
-D CMAKE_C_COMPILER_LAUNCHER=ccache -D CMAKE_CXX_COMPILER_LAUNCHER=ccache
668
708
-D USE_SEQ=ON -D USE_MPI=ON -D USE_OMP=ON -D USE_TBB=ON -D USE_STL=ON
669
709
-D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON
@@ -717,10 +757,16 @@ jobs:
717
757
with :
718
758
submodules : recursive
719
759
- name : Add msbuild to PATH
720
-
760
+ uses : microsoft/setup-msbuild@v2
761
+ with :
762
+ vs-version : ' latest'
763
+ - name : Setup ninja
764
+ uses : seanmiddleditch/gha-setup-ninja@master
765
+ - name : Setup MSVC for Ninja again
766
+ uses : ilammy/msvc-dev-cmd@v1
721
767
- name : CMake configure
722
768
run : >
723
- cmake -S . -B build -A x64 -T ClangCL
769
+ cmake -S . -B build -GNinja -D CMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl
724
770
-D USE_SEQ=ON -D USE_MPI=OFF -D USE_OMP=OFF -D USE_TBB=ON -D USE_STL=ON
725
771
-D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON
726
772
-D CMAKE_BUILD_TYPE=RELEASE
@@ -765,10 +811,16 @@ jobs:
765
811
with :
766
812
submodules : recursive
767
813
- name : Add msbuild to PATH
768
-
814
+ uses : microsoft/setup-msbuild@v2
815
+ with :
816
+ vs-version : ' latest'
817
+ - name : Setup ninja
818
+ uses : seanmiddleditch/gha-setup-ninja@master
819
+ - name : Setup MSVC for Ninja again
820
+ uses : ilammy/msvc-dev-cmd@v1
769
821
- name : CMake configure
770
822
run : >
771
- cmake -S . -B build -A x64 -T ClangCL
823
+ cmake -S . -B build -GNinja -D CMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl
772
824
-D USE_SEQ=ON -D USE_MPI=OFF -D USE_OMP=OFF -D USE_TBB=ON -D USE_STL=ON
773
825
-D USE_FUNC_TESTS=ON -D USE_PERF_TESTS=ON
774
826
-D CMAKE_BUILD_TYPE=RELEASE
@@ -823,7 +875,9 @@ jobs:
823
875
CLANG_BUILD : 1
824
876
ubuntu-gcc-build-codecov :
825
877
needs :
826
- - ubuntu-gcc-build
878
+ - ubuntu-gcc-build-extended
879
+ - ubuntu-clang-build-extended
880
+ - macos-clang-build-extended
827
881
runs-on : ubuntu-latest
828
882
steps :
829
883
- uses : actions/checkout@v4
@@ -834,7 +888,7 @@ jobs:
834
888
sudo apt-get update
835
889
sudo apt-get install gcc g++
836
890
sudo apt-get install ninja-build
837
- sudo apt-get install mpich libmpich* mpi* openmpi-bin
891
+ sudo apt-get install mpich
838
892
sudo apt-get install libomp-dev
839
893
sudo apt-get install valgrind
840
894
sudo apt-get install gcovr lcov
@@ -854,6 +908,7 @@ jobs:
854
908
source scripts/run_mpi.sh
855
909
env :
856
910
PROC_COUNT : 2
911
+ OMP_NUM_THREADS : 2
857
912
- name : Run tests (threads, num_threads=1)
858
913
run : source scripts/run_threads.sh
859
914
env :
@@ -883,7 +938,7 @@ jobs:
883
938
run : |
884
939
cd build
885
940
lcov --capture --directory . --output-file ../coverage.info
886
- lcov --remove ../coverage.info '*/3rdparty/*' '/usr/*' '*/perf_tests/*' '*/func_tests/*' --output-file ../coverage.info
941
+ lcov --remove ../coverage.info '*/3rdparty/*' '/usr/*' '*/perf_tests/*' '*/func_tests/*' '*/all/runner.cpp' '*/mpi/runner.cpp' '*/omp/runner.cpp' '*/seq/runner.cpp' '*/stl/runner.cpp' '*/tbb/runner.cpp' --output-file ../coverage.info
887
942
cd ..
888
943
genhtml coverage.info --output-directory cov-report
889
944
- name : Upload coverage report artifact
@@ -893,11 +948,10 @@ jobs:
893
948
path : ' cov-report'
894
949
ubuntu-gcc-build-perf-stats :
895
950
needs :
896
- - macos-clang-build
897
- - ubuntu-clang-sanitizer-build
898
951
- ubuntu-gcc-build-codecov
899
- - windows-clang-build
900
- - windows-msvc-build
952
+ - ubuntu-clang-sanitizer-build-extended
953
+ - windows-clang-build-extended
954
+ - windows-msvc-build-extended
901
955
runs-on : ubuntu-latest
902
956
steps :
903
957
- uses : actions/checkout@v4
@@ -909,7 +963,7 @@ jobs:
909
963
sudo apt-get update
910
964
sudo apt-get install gcc-12 g++-12
911
965
sudo apt-get install ninja-build
912
- sudo apt-get install mpich libmpich* mpi* openmpi-bin
966
+ sudo apt-get install mpich
913
967
sudo apt-get install libomp-dev
914
968
sudo apt-get install valgrind
915
969
python3 -m pip install xlsxwriter
0 commit comments