-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
8 changed files
with
145 additions
and
100 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
version: 2 | ||
updates: | ||
- package-ecosystem: github-actions | ||
directory: / | ||
schedule: | ||
interval: weekly |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,29 +1,76 @@ | ||
name: github-CI | ||
name: main | ||
|
||
on: [push] | ||
on: | ||
push: | ||
branches: | ||
- master | ||
pull_request: | ||
branches: | ||
- master | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
|
||
test: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest] | ||
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] | ||
name: Python ${{ matrix.python-version }} example | ||
os: | ||
- ubuntu-latest | ||
- macos-latest | ||
mpi: | ||
- mpich | ||
- openmpi | ||
py: | ||
# - "3.7" | ||
# - "3.8" | ||
# - "3.9" | ||
- "3.10" | ||
- "3.11" | ||
- "3.12" | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* | ||
- name: setup-conda | ||
uses: s-weigand/setup-conda@v1 | ||
|
||
- uses: actions/checkout@v4 | ||
|
||
- uses: actions/setup-python@v5 | ||
with: | ||
update-conda: true | ||
python-version: ${{ matrix.python-version }} | ||
conda-channels: anaconda, conda-forge | ||
- run: conda --version | ||
- run: which python | ||
python-version: ${{ matrix.py }} | ||
|
||
- run: | | ||
conda config --set always_yes yes | ||
conda install -n root conda-build numpy fftw | ||
conda build ./conf | ||
# Install fftw | ||
case $(uname) in | ||
Linux) | ||
sudo apt update | ||
sudo apt install -y -q libfftw3-dev | ||
;; | ||
Darwin) | ||
export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 | ||
brew install fftw | ||
;; | ||
esac | ||
- run: python -m pip install -U pip build | ||
|
||
- run: python -m build | ||
|
||
- uses: mpi4py/setup-mpi@v1 | ||
with: | ||
mpi: ${{ matrix.mpi }} | ||
|
||
- run: pip install -vvv dist/mpi4py_fft-*.whl | ||
env: | ||
CFLAGS: "-O0" | ||
|
||
- run: pip install -r conf/requirements-test.txt | ||
|
||
- if: matrix.mpi == 'mpich' && startsWith(matrix.os, 'ubuntu') | ||
run: ./runtests.sh | ||
working-directory: tests | ||
|
||
- if: matrix.mpi == 'mpich' && startsWith(matrix.os, 'ubuntu') | ||
uses: codecov/codecov-action@v4 | ||
with: | ||
use_oidc: true | ||
files: test/coverage.xml | ||
name: ${{ matrix.os }}-${{ matrix.mpi }}-${{ matrix.py }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,7 +11,6 @@ _templates/ | |
*.dat | ||
*.html | ||
*.xml | ||
*.txt | ||
*.h5 | ||
*.nc | ||
*.xdmf | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
coverage | ||
pyfftw; sys_platform == 'linux' and python_version < '3.12' | ||
scipy |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,47 +1,35 @@ | ||
#!/bin/sh | ||
set -e | ||
|
||
PY=$(python -c 'import sys; print(sys.version_info.major)') | ||
export OMPI_MCA_plm=isolated | ||
export OMPI_MCA_btl_vader_single_copy_mechanism=none | ||
export OMPI_MCA_rmaps_base_oversubscribe=yes | ||
export OMPI_MCA_plm_ssh_agent=false | ||
export OMPI_MCA_pml=ob1 | ||
export OMPI_MCA_btl=tcp,self | ||
export OMPI_MCA_mpi_yield_when_idle=true | ||
export OMPI_MCA_btl_base_warn_component_unused=false | ||
export OMPI_MCA_rmaps_base_oversubscribe=true | ||
export PRTE_MCA_rmaps_default_mapping_policy=:oversubscribe | ||
|
||
if [ $PY -eq 3 ]; then | ||
# coverage only for python version 3 | ||
python -m coverage erase | ||
|
||
python -m coverage erase | ||
python -m coverage run -m test_fftw | ||
python -m coverage run -m test_libfft | ||
python -m coverage run -m test_io | ||
python -m coverage run -m test_darray | ||
|
||
python -m coverage run -m test_fftw | ||
python -m coverage run -m test_libfft | ||
python -m coverage run -m test_io | ||
python -m coverage run -m test_darray | ||
mpiexec -n 2 python -m coverage run -m test_pencil | ||
mpiexec -n 2 python -m coverage run -m test_pencil | ||
#mpiexec -n 4 python -m coverage test_pencil.py | ||
#mpiexec -n 8 python -m coverage test_pencil.py | ||
|
||
#mpiexec -n 4 python -m coverage test_pencil.py | ||
#mpiexec -n 8 python -m coverage test_pencil.py | ||
mpiexec -n 2 python -m coverage run -m test_mpifft | ||
#mpiexec -n 4 python -m coverage test_mpifft.py | ||
# mpiexec -n 8 python -m coverage test_mpifft.py | ||
# mpiexec -n 12 python -m coverage test_mpifft.py | ||
mpiexec -n 2 python -m coverage run spectral_dns_solver.py | ||
mpiexec -n 2 python -m coverage run -m test_io | ||
#mpiexec -n 4 python -m coverage run -m test_io | ||
mpiexec -n 2 python -m coverage run -m test_darray | ||
#mpiexec -n 4 python -m coverage run -m test_darray | ||
mpiexec -n 2 python -m coverage run -m test_mpifft | ||
#mpiexec -n 4 python -m coverage test_mpifft.py | ||
#mpiexec -n 8 python -m coverage test_mpifft.py | ||
#mpiexec -n 12 python -m coverage test_mpifft.py | ||
mpiexec -n 2 python -m coverage run spectral_dns_solver.py | ||
|
||
python -m coverage combine | ||
mpiexec -n 2 python -m coverage run -m test_io | ||
#mpiexec -n 4 python -m coverage run -m test_io | ||
mpiexec -n 2 python -m coverage run -m test_darray | ||
#mpiexec -n 4 python -m coverage run -m test_darray | ||
|
||
else | ||
python test_fftw.py | ||
python test_libfft.py | ||
mpiexec -n 2 python test_pencil.py | ||
#mpiexec -n 4 python test_pencil.py | ||
#mpiexec -n 8 python test_pencil.py | ||
mpiexec -n 2 python test_mpifft.py | ||
#mpiexec -n 4 python test_mpifft.py | ||
# mpiexec -n 8 python test_mpifft.py | ||
# mpiexec -n 12 python test_mpifft.py | ||
mpiexec -n 2 python test_io.py | ||
mpiexec -n 2 python test_darray.py | ||
mpiexec -n 2 python spectral_dns_solver.py | ||
fi | ||
python -m coverage combine | ||
python -m coverage xml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters