Skip to content

VisMF::Read: Cache BoxArray and DistributionMapping #2645

VisMF::Read: Cache BoxArray and DistributionMapping

VisMF::Read: Cache BoxArray and DistributionMapping #2645

Workflow file for this run

name: apps
on: [push, pull_request]
concurrency:
group: ${{ github.ref }}-${{ github.head_ref }}-apps
cancel-in-progress: true
jobs:
check_changes:
uses: ./.github/workflows/check_changes.yml
castro:
name: Castro
runs-on: ubuntu-latest
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Get Latest Release Tag
run: |
CASTRO_TAG=$(wget https://github.com/AMReX-Astro/Castro/releases/latest 2>&1 | grep Location: | awk '{print $2}' | awk -F/ '{print $NF}')
echo "CASTRO_TAG=$CASTRO_TAG" >> $GITHUB_ENV
MICROPHYSICS_TAG=$(wget https://github.com/AMReX-Astro/Microphysics/releases/latest 2>&1 | grep Location: | awk '{print $2}' | awk -F/ '{print $NF}')
echo "MICROPHYSICS_TAG=$MICROPHYSICS_TAG" >> $GITHUB_ENV
- name: Download Castro
uses: actions/checkout@v4
with:
repository: 'AMReX-Astro/Castro'
ref: ${{env.CASTRO_TAG}}
path: 'Castro'
- name: Download Microphysics
uses: actions/checkout@v4
with:
repository: 'AMReX-Astro/Microphysics'
ref: ${{env.MICROPHYSICS_TAG}}
path: 'Microphysics'
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies.sh
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
uses: actions/cache@v4
with:
path: ~/.cache/ccache
key: ccache-${{ github.workflow }}-${{ github.job }}-git-${{ github.sha }}
restore-keys: |
ccache-${{ github.workflow }}-${{ github.job }}-git-
- name: Build
run: |
export CCACHE_COMPRESS=1
export CCACHE_COMPRESSLEVEL=10
export CCACHE_MAXSIZE=75M
export CCACHE_LOGFILE=${{ github.workspace }}/ccache.log.txt
ccache -z
export AMREX_HOME=${PWD}
export MICROPHYSICS_HOME=${PWD}/Microphysics
cd Castro/Exec/hydro_tests/Sedov/
make -j4 CCACHE=ccache USE_MPI=FALSE \
USE_LINEAR_SOLVERS_INCFLO=FALSE \
USE_LINEAR_SOLVERS_EM=FALSE
ccache -s
du -hs ~/.cache/ccache
warpx:
name: WarpX
runs-on: ubuntu-latest
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Download WarpX
uses: actions/checkout@v4
with:
repository: 'ECP-WarpX/WarpX'
ref: development
path: 'WarpX'
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies.sh
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
uses: actions/cache@v4
with:
path: ~/.cache/ccache
key: ccache-${{ github.workflow }}-${{ github.job }}-git-${{ github.sha }}
restore-keys: |
ccache-${{ github.workflow }}-${{ github.job }}-git-
- name: Build
run: |
export CCACHE_COMPRESS=1
export CCACHE_COMPRESSLEVEL=10
export CCACHE_MAXSIZE=40M
export CCACHE_LOGFILE=${{ github.workspace }}/ccache.log.txt
ccache -z
cmake -S WarpX -B WarpX/build \
-DWarpX_amrex_src=${PWD} \
-DWarpX_QED=OFF \
-DWarpX_OPENPMD=OFF \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DAMReX_FFT=ON \
-DAMReX_LINEAR_SOLVERS_INCFLO=OFF
cmake --build WarpX/build -j 4
ccache -s
du -hs ~/.cache/ccache
pyamrex:
name: pyamrex
runs-on: ubuntu-latest
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Checkout pyamrex
uses: actions/checkout@v4
with:
repository: 'AMReX-Codes/pyamrex'
ref: 'development'
path: 'pyamrex'
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies.sh
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
uses: actions/cache@v4
with:
path: ~/.cache/ccache
key: ccache-${{ github.workflow }}-${{ github.job }}-git-${{ github.sha }}
restore-keys: |
ccache-${{ github.workflow }}-${{ github.job }}-git-
- name: Build, Install & Test
run: |
export CCACHE_COMPRESS=1
export CCACHE_COMPRESSLEVEL=10
export CCACHE_MAXSIZE=400M
export CCACHE_LOGFILE=${{ github.workspace }}/ccache.log.txt
ccache -z
python3 -m pip install -U pip setuptools wheel
python3 -m pip install -U cmake
python3 -m pip install -U pandas pytest mpi4py
export AMREX_HOME=${PWD}
cd pyamrex
cmake -S . -B build \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DBUILD_SHARED_LIBS=ON \
-DpyAMReX_amrex_src=${AMREX_HOME} \
-DAMReX_MPI=ON \
-DAMReX_SPACEDIM="1;2;3"
cmake --build build --target pip_install -j 4
ctest --test-dir build --output-on-failure
sudo cp build/lib/libamrex_*.so /usr/lib/
rm -rf build
python3 -m pytest tests
ccache -s
du -hs ~/.cache/ccache