Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
ce1f832
Intel Bug
May 25, 2023
517c229
Merge branch 'MFlowCode:master' into patch-1
anandrdbz May 25, 2023
6c96b61
Intel Bug
May 25, 2023
d4f3e21
Merge branch 'patch-1' of https://github.com/anandrdbz/MFC into patch-1
May 25, 2023
1f3e652
gpu bug fixed
May 25, 2023
16dfcc1
Typo
May 25, 2023
8ea1bb6
Update m_mpi_proxy.fpp
anandrdbz May 25, 2023
d0ab972
Update m_mpi_proxy.fpp
anandrdbz May 25, 2023
f5885cb
Update m_mpi_proxy.fpp
anandrdbz May 25, 2023
140f29d
Typo
May 25, 2023
cd4b5d1
Update ci.yml
sbryngelson May 25, 2023
5b66ca7
Update ci.yml
anandrdbz May 31, 2023
485f7fe
Update ci.yml
anandrdbz May 31, 2023
31b5c4d
TESTING INTEL COMPILER
Jul 14, 2023
55793cb
bug
Jul 14, 2023
88013bd
bug
Jul 14, 2023
55f24d0
bug
Jul 14, 2023
872c037
bug
Jul 14, 2023
a5c1bb0
bug
Jul 14, 2023
9beaf42
Update ci.yml
anandrdbz Jul 27, 2023
9ab7639
UPDATE
Jul 27, 2023
655fa28
UPDATE
Jul 27, 2023
6de8fe8
UDPATE ci.yml
Jul 27, 2023
e73dc85
Update ci.yml
Jul 27, 2023
fe53856
Update ci.yml
Jul 27, 2023
16ca6fb
Update ci.yml
Jul 27, 2023
3a837c2
ci.yml
Jul 27, 2023
b87eb23
ci.yml
Jul 27, 2023
eac51db
ci.yml
Jul 27, 2023
cd577ff
ci.yml
Jul 27, 2023
7c4feb1
ci.yml
Jul 28, 2023
919ad69
ci.yml
Jul 28, 2023
816b846
ci.yml
Jul 28, 2023
108dabe
ci.yml
Jul 28, 2023
29739bb
ci.yml
Jul 28, 2023
fcc5c21
debug
Jul 28, 2023
0359102
debug
Jul 28, 2023
9876e61
debug
Jul 28, 2023
dea2859
debug
Jul 28, 2023
ec72d64
debug
Jul 28, 2023
7132081
debug
Jul 28, 2023
17481b0
debug
Jul 28, 2023
daa9619
debug
Jul 28, 2023
6dc360e
debug
Jul 28, 2023
a84c1ab
debug
Jul 28, 2023
b27ebac
debug
Jul 28, 2023
c4dca9c
TEST ALL
Jul 28, 2023
eae7209
clean
Jul 28, 2023
40e9945
Merge branch 'final' into patch-1
Jul 28, 2023
30b096c
ci.yml
Jul 28, 2023
c112307
merge
Jul 28, 2023
d4e9988
merge
Jul 28, 2023
6d7cbea
Merge branch 'master' into patch-1
anandrdbz Jul 28, 2023
2bfd160
test
Jul 28, 2023
501a77a
test
Jul 28, 2023
6644404
test
Jul 28, 2023
70fc39b
test
Jul 28, 2023
63ed1ae
test
Jul 28, 2023
5a1c71b
test
Jul 28, 2023
39828f0
test
Jul 28, 2023
b2c57ff
test
Jul 28, 2023
0d60622
test
Jul 28, 2023
7634285
test
Jul 28, 2023
ce6cf67
Omega wrt
Jul 28, 2023
94e82fb
test
Jul 28, 2023
035d11e
test
Jul 28, 2023
a61a7f8
fix
Jul 28, 2023
f4f35cd
ci
Jul 31, 2023
3c844f5
ci
Jul 31, 2023
0ce3503
ci
Jul 31, 2023
7bc4d1d
ci
Jul 31, 2023
a62ec12
ci
Jul 31, 2023
7550791
ci
Jul 31, 2023
059c8d1
ci
Jul 31, 2023
5871c9b
ci
Jul 31, 2023
87b3497
ci
Jul 31, 2023
913a3dc
ci
Jul 31, 2023
66a5b31
ci
Jul 31, 2023
2c39f85
ci
Jul 31, 2023
f2ef824
ci
Jul 31, 2023
f36e437
ci
Jul 31, 2023
be8dc4a
CI
Jul 31, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 27 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ on:
pull_request:

workflow_dispatch:

jobs:
github:
name: Github
Expand All @@ -24,24 +24,25 @@ jobs:
os: ['ubuntu', 'macos']
mpi: ['mpi', 'no-mpi']
debug: ['debug', 'no-debug']
intel: [false]
intel: [true, false]
fail-fast: false
continue-on-error: true
runs-on: ${{ matrix.os }}-latest
steps:
- name: Clone
if: matrix.os == 'ubuntu' || (matrix.os == 'macos' && matrix.intel == false)
uses: actions/checkout@v3

- name: Setup MacOS
if: matrix.os == 'macos'
if: matrix.os == 'macos' && matrix.intel == false
run: |
echo "CC=gcc-13" >> $GITHUB_ENV
echo "CXX=g++-13" >> $GITHUB_ENV
echo "FC=gfortran-13" >> $GITHUB_ENV
brew install wget make python make cmake coreutils gcc@13

- name: (MacOS) Build OpenMPI
if: matrix.os == 'macos' && matrix.mpi == 'mpi'
if: matrix.os == 'macos' && matrix.mpi == 'mpi' && matrix.intel == false
run: |
echo "OMPI_FC=gfortran-13" >> $GITHUB_ENV
echo "OMPI_CXX=g++-13" >> $GITHUB_ENV
Expand All @@ -51,9 +52,9 @@ jobs:
- name: Setup Ubuntu
if: matrix.os == 'ubuntu' && matrix.intel == false
run: |
sudo apt update -y
sudo apt install -y tar wget make cmake gcc g++ python3 python3-dev "openmpi-*" libopenmpi-dev

sudo apt update -y
sudo apt install -y tar wget make cmake gcc g++ python3 python3-dev "openmpi-*" libopenmpi-dev
- name: Setup Ubuntu (Intel)
if: matrix.os == 'ubuntu' && matrix.intel == true
run: |
Expand All @@ -72,12 +73,29 @@ jobs:
echo "OMPI_CXX=$(which icpc)" >> $GITHUB_ENV
echo "OMPI_MPICC=$(which icc)" >> $GITHUB_ENV
echo "MPI_HOME=/opt/intel/oneapi/mpi/2021.7.1/" >> $GITHUB_ENV
echo "I_MPI_ROOT=/opt/intel/oneapi/mpi/2021.7.1/" >> $GITHUB_ENV

- name: Build-intel
if: matrix.intel == true && matrix.os == 'ubuntu'
run: |
source /opt/intel/oneapi/setvars.sh
/bin/bash mfc.sh build -j $(nproc) --${{ matrix.debug }} --${{ matrix.mpi }}

- name: Build
run: /bin/bash mfc.sh build -j $(nproc) --${{ matrix.debug }} --${{ matrix.mpi }}
if: matrix.intel == false
run: |
/bin/bash mfc.sh build -j $(nproc) --${{ matrix.debug }} --${{ matrix.mpi }}

- name: Test-intel
if: matrix.intel == true && matrix.os == 'ubuntu'
run: |
source /opt/intel/oneapi/setvars.sh
/bin/bash mfc.sh test -j $(nproc) $(if [ "${{ matrix.mpi }}" == "mpi" ]; then echo "--test-all"; fi)

- name: Test
run: /bin/bash mfc.sh test -j $(nproc) $(if [ "${{ matrix.mpi }}" == "mpi" ]; then echo "--test-all"; fi)
if: matrix.intel == false
run: |
/bin/bash mfc.sh test -j $(nproc) $(if [ "${{ matrix.mpi }}" == "mpi" ]; then echo "--test-all"; fi)

docker:
name: Github | Docker
Expand Down
1 change: 0 additions & 1 deletion src/common/m_variables_conversion.fpp
Original file line number Diff line number Diff line change
Expand Up @@ -690,7 +690,6 @@ contains
s_convert_to_mixture_variables => &
s_convert_species_to_mixture_variables
end if

end subroutine s_initialize_variables_conversion_module ! --------------

!Initialize mv at the quadrature nodes based on the initialized moments and sigma
Expand Down
84 changes: 42 additions & 42 deletions src/post_process/m_data_input.f90
Original file line number Diff line number Diff line change
Expand Up @@ -405,15 +405,15 @@ subroutine s_populate_grid_variables_buffer_regions() ! ----------------

call s_mpi_sendrecv_grid_vars_buffer_regions('beg', 'x')

do i = 1, offset_x%beg
x_cb(-1 - i) = x_cb(-i) - dx(-i)
end do
end if

do i = 1, buff_size
x_cc(-i) = x_cc(1 - i) - (dx(1 - i) + dx(-i))/2d0
end do
do i = 1, offset_x%beg
x_cb(-1 - i) = x_cb(-i) - dx(-i)
end do

end if
do i = 1, buff_size
x_cc(-i) = x_cc(1 - i) - (dx(1 - i) + dx(-i))/2d0
end do

! Ghost-cell extrapolation BC at the end
if (bc_x%end <= -3) then
Expand Down Expand Up @@ -441,15 +441,15 @@ subroutine s_populate_grid_variables_buffer_regions() ! ----------------

call s_mpi_sendrecv_grid_vars_buffer_regions('end', 'x')

do i = 1, offset_x%end
x_cb(m + i) = x_cb(m + (i - 1)) + dx(m + i)
end do
end if

do i = 1, buff_size
x_cc(m + i) = x_cc(m + (i - 1)) + (dx(m + (i - 1)) + dx(m + i))/2d0
end do
do i = 1, offset_x%end
x_cb(m + i) = x_cb(m + (i - 1)) + dx(m + i)
end do

end if
do i = 1, buff_size
x_cc(m + i) = x_cc(m + (i - 1)) + (dx(m + (i - 1)) + dx(m + i))/2d0
end do

! END: Populating Buffer Regions in the x-direction ================

Expand Down Expand Up @@ -483,15 +483,15 @@ subroutine s_populate_grid_variables_buffer_regions() ! ----------------

call s_mpi_sendrecv_grid_vars_buffer_regions('beg', 'y')

do i = 1, offset_y%beg
y_cb(-1 - i) = y_cb(-i) - dy(-i)
end do
end if

do i = 1, buff_size
y_cc(-i) = y_cc(1 - i) - (dy(1 - i) + dy(-i))/2d0
end do
do i = 1, offset_y%beg
y_cb(-1 - i) = y_cb(-i) - dy(-i)
end do

end if
do i = 1, buff_size
y_cc(-i) = y_cc(1 - i) - (dy(1 - i) + dy(-i))/2d0
end do

! Ghost-cell extrapolation BC at the end
if (bc_y%end <= -3) then
Expand Down Expand Up @@ -519,15 +519,15 @@ subroutine s_populate_grid_variables_buffer_regions() ! ----------------

call s_mpi_sendrecv_grid_vars_buffer_regions('end', 'y')

do i = 1, offset_y%end
y_cb(n + i) = y_cb(n + (i - 1)) + dy(n + i)
end do
end if

do i = 1, buff_size
y_cc(n + i) = y_cc(n + (i - 1)) + (dy(n + (i - 1)) + dy(n + i))/2d0
end do
do i = 1, offset_y%end
y_cb(n + i) = y_cb(n + (i - 1)) + dy(n + i)
end do

end if
do i = 1, buff_size
y_cc(n + i) = y_cc(n + (i - 1)) + (dy(n + (i - 1)) + dy(n + i))/2d0
end do

! END: Populating Buffer Regions in the y-direction ================

Expand Down Expand Up @@ -561,15 +561,15 @@ subroutine s_populate_grid_variables_buffer_regions() ! ----------------

call s_mpi_sendrecv_grid_vars_buffer_regions('beg', 'z')

do i = 1, offset_z%beg
z_cb(-1 - i) = z_cb(-i) - dz(-i)
end do
end if

do i = 1, buff_size
z_cc(-i) = z_cc(1 - i) - (dz(1 - i) + dz(-i))/2d0
end do
do i = 1, offset_z%beg
z_cb(-1 - i) = z_cb(-i) - dz(-i)
end do

end if
do i = 1, buff_size
z_cc(-i) = z_cc(1 - i) - (dz(1 - i) + dz(-i))/2d0
end do

! Ghost-cell extrapolation BC at the end
if (bc_z%end <= -3) then
Expand Down Expand Up @@ -597,15 +597,15 @@ subroutine s_populate_grid_variables_buffer_regions() ! ----------------

call s_mpi_sendrecv_grid_vars_buffer_regions('end', 'z')

do i = 1, offset_z%end
z_cb(p + i) = z_cb(p + (i - 1)) + dz(p + i)
end do
end if

do i = 1, buff_size
z_cc(p + i) = z_cc(p + (i - 1)) + (dz(p + (i - 1)) + dz(p + i))/2d0
end do
do i = 1, offset_z%end
z_cb(p + i) = z_cb(p + (i - 1)) + dz(p + i)
end do

end if
do i = 1, buff_size
z_cc(p + i) = z_cc(p + (i - 1)) + (dz(p + (i - 1)) + dz(p + i))/2d0
end do

end if

Expand Down
52 changes: 45 additions & 7 deletions src/post_process/m_mpi_proxy.fpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ module m_mpi_proxy
use m_global_parameters !< Global parameters for the code

use m_mpi_common

use ieee_arithmetic
! ==========================================================================

implicit none
Expand Down Expand Up @@ -516,8 +518,8 @@ contains
! Boundary condition at the beginning
if (proc_coords(2) > 0 .or. bc_y%beg == -1) then
proc_coords(2) = proc_coords(2) - 1
call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_y%beg, &
ierr)
call MPI_CART_RANK(MPI_COMM_CART, proc_coords, &
bc_y%beg, ierr)
proc_coords(2) = proc_coords(2) + 1
end if

Expand All @@ -531,8 +533,8 @@ contains
! Boundary condition at the end
if (proc_coords(2) < num_procs_y - 1 .or. bc_y%end == -1) then
proc_coords(2) = proc_coords(2) + 1
call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_y%end, &
ierr)
call MPI_CART_RANK(MPI_COMM_CART, proc_coords, &
bc_y%end, ierr)
proc_coords(2) = proc_coords(2) - 1
end if

Expand Down Expand Up @@ -607,7 +609,7 @@ contains
else
offset_x%beg = 0
end if

! Boundary condition at the end
if (proc_coords(1) < num_procs_x - 1 .or. bc_x%end == -1) then
proc_coords(1) = proc_coords(1) + 1
Expand Down Expand Up @@ -928,7 +930,13 @@ contains
r = sys_size*(j + buff_size) &
+ sys_size*buff_size*k + (i - 1) &
+ sys_size*buff_size*(n + 1)*l
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
#if defined(__INTEL_COMPILER)
if(ieee_is_nan(q_cons_vf(i)%sf(j, k, l))) then
print *, "Error", j, k, l, i
error stop "NaN(s) in recv"
end if
#endif
end do
end do
end do
Expand Down Expand Up @@ -1002,7 +1010,13 @@ contains
r = (i - 1) + sys_size*(j - m - 1) &
+ sys_size*buff_size*k &
+ sys_size*buff_size*(n + 1)*l
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
#if defined(__INTEL_COMPILER)
if(ieee_is_nan(q_cons_vf(i)%sf(j, k, l))) then
print *, "Error", j, k, l, i
error stop "NaN(s) in recv"
end if
#endif
end do
end do
end do
Expand Down Expand Up @@ -1091,6 +1105,12 @@ contains
(k + buff_size) + sys_size* &
(m + 2*buff_size + 1)*buff_size*l
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
#if defined(__INTEL_COMPILER)
if(ieee_is_nan(q_cons_vf(i)%sf(j, k, l))) then
print *, "Error", j, k, l, i
error stop "NaN(s) in recv"
end if
#endif
end do
end do
end do
Expand Down Expand Up @@ -1171,6 +1191,12 @@ contains
(k - n - 1) + sys_size* &
(m + 2*buff_size + 1)*buff_size*l
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
#if defined(__INTEL_COMPILER)
if(ieee_is_nan(q_cons_vf(i)%sf(j, k, l))) then
print *, "Error", j, k, l, i
error stop "NaN(s) in recv"
end if
#endif
end do
end do
end do
Expand Down Expand Up @@ -1264,6 +1290,12 @@ contains
+ sys_size*(m + 2*buff_size + 1)* &
(n + 2*buff_size + 1)*(l + buff_size)
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
#if defined(__INTEL_COMPILER)
if(ieee_is_nan(q_cons_vf(i)%sf(j, k, l))) then
print *, "Error", j, k, l, i
error stop "NaN(s) in recv"
end if
#endif
end do
end do
end do
Expand Down Expand Up @@ -1349,6 +1381,12 @@ contains
+ sys_size*(m + 2*buff_size + 1)* &
(n + 2*buff_size + 1)*(l - p - 1)
q_cons_vf(i)%sf(j, k, l) = q_cons_buffer_in(r)
#if defined(__INTEL_COMPILER)
if(ieee_is_nan(q_cons_vf(i)%sf(j, k, l))) then
print *, "Error", j, k, l, i
error stop "NaN(s) in recv"
end if
#endif
end do
end do
end do
Expand Down
Loading