Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
8d5ceb0
Add integration tests for application notebooks
jan-janssen Mar 28, 2025
ba8f614
remove pmix
jan-janssen Mar 28, 2025
a31e50d
remove constraints
jan-janssen Mar 28, 2025
6138780
fix notebook names
jan-janssen Mar 28, 2025
d046292
increase time out
jan-janssen Mar 28, 2025
4fc880e
Merge remote-tracking branch 'origin/main' into integration
jan-janssen Mar 28, 2025
7db29e7
remove ASE command
jan-janssen Mar 28, 2025
2316b1d
Disable qe cluster test
jan-janssen Mar 28, 2025
b8daa95
fix pseudo potential directory
jan-janssen Mar 28, 2025
9f23e24
relative to working directory
jan-janssen Mar 28, 2025
9e60689
try absolute path
jan-janssen Mar 28, 2025
c0f8ff4
Update pipeline.yml
jan-janssen Mar 28, 2025
eebacdb
Merge remote-tracking branch 'origin/main' into integration
jan-janssen Mar 28, 2025
74b8710
Test new debugging capability
jan-janssen Mar 28, 2025
5140389
use flux run to call pw.x
jan-janssen Mar 28, 2025
d07609a
try p2.x with mpi
jan-janssen Mar 28, 2025
80fbc1a
mpi takes too long
jan-janssen Mar 28, 2025
b4d53c5
enable 3rd test
jan-janssen Mar 28, 2025
0d1ad0b
always nest flux
jan-janssen Mar 28, 2025
4ba5f59
no more nesting
jan-janssen Mar 28, 2025
b59404f
no more nesting
jan-janssen Mar 28, 2025
0dcd539
merge notebooks
jan-janssen Mar 28, 2025
12a5c1c
fix pseudo potential directory
jan-janssen Mar 28, 2025
1f444fb
add quantum espresso
jan-janssen Mar 28, 2025
4176dd6
Short introduction
jan-janssen Mar 28, 2025
33087ad
Add some more documentation
jan-janssen Mar 28, 2025
63733e7
Finish up documentation
jan-janssen Mar 28, 2025
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
21 changes: 21 additions & 0 deletions .ci_support/environment-integration.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
channels:
- conda-forge
dependencies:
- jupyter
- papermill
- numpy
- openmpi
- cloudpickle =3.1.1
- mpi4py
- pyzmq =26.3.0
- flux-core =0.59.0
- versioneer =0.28
- h5py
- matplotlib =3.10.0
- networkx =3.4.2
- pygraphviz =1.14
- pysqa =0.2.4
- ipython =9.0.2
- atomistics =0.2.4
- qe =7.2
- gpaw =24.6.0
27 changes: 27 additions & 0 deletions .github/workflows/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,33 @@ jobs:
flux start papermill notebooks/3-hpc-job.ipynb notebooks/3-hpc-job-out.ipynb -k python3
papermill notebooks/4-developer.ipynb notebooks/4-developer-out.ipynb -k python3

notebooks_integration:
needs: [black]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Merge Notebook environment
run: |
echo -e "channels:\n - conda-forge\n" > .condarc
- name: Setup Mambaforge
uses: conda-incubator/setup-miniconda@v3
with:
python-version: "3.12"
miniforge-version: latest
condarc-file: .condarc
environment-file: .ci_support/environment-integration.yml
- name: Install
shell: bash -l {0}
run: |
pip install versioneer[toml]==0.29
pip install . --no-deps --no-build-isolation
- name: Notebooks
shell: bash -l {0}
timeout-minutes: 20
run: |
flux start papermill notebooks/5-1-gpaw.ipynb notebooks/5-1-gpaw-out.ipynb -k python3
flux start papermill notebooks/5-2-quantum-espresso.ipynb notebooks/5-2-quantum-espresso-out.ipynb -k python3

unittest_flux_mpich:
needs: [black]
runs-on: ubuntu-latest
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,9 @@ as hierarchical job scheduler within the allocations.
* [SLURM](https://executorlib.readthedocs.io/en/latest/3-hpc-job.html#slurm)
* [SLURM with Flux](https://executorlib.readthedocs.io/en/latest/3-hpc-job.html#slurm-with-flux)
* [Flux](https://executorlib.readthedocs.io/en/latest/3-hpc-job.html#flux)
* [Application](https://executorlib.readthedocs.io/en/latest/application.html)
* [GPAW](https://executorlib.readthedocs.io/en/latest/5-1-gpaw.html)
* [Quantum Espresso](https://executorlib.readthedocs.io/en/latest/5-2-quantum-espresso.html)
* [Trouble Shooting](https://executorlib.readthedocs.io/en/latest/trouble_shooting.html)
* [Filesystem Usage](https://executorlib.readthedocs.io/en/latest/trouble_shooting.html#filesystem-usage)
* [Firewall Issues](https://executorlib.readthedocs.io/en/latest/trouble_shooting.html#firewall-issues)
Expand Down
4 changes: 4 additions & 0 deletions docs/_toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ chapters:
- file: 1-single-node.ipynb
- file: 2-hpc-cluster.ipynb
- file: 3-hpc-job.ipynb
- file: application.md
sections:
- file: 5-1-gpaw.ipynb
- file: 5-2-quantum-espresso.ipynb
- file: trouble_shooting.md
- file: 4-developer.ipynb
- file: api.rst
10 changes: 10 additions & 0 deletions docs/application.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Application
While `executorlib` is designed to up-scale any Python function for high performance computing (HPC), it was initially
developed to accelerate atomistic computational materials science simulation. To demonstrate the usage of `executorlib`
in the context of atomistic simulation, it is combined with [atomistics](https://atomistics.readthedocs.io/) and the
[atomic simulation environment (ASE)](https://wiki.fysik.dtu.dk/ase/) to calculate the bulk modulus with two density
functional theory simulation codes [gpaw](https://gpaw.readthedocs.io/index.html) and [quantum espresso](https://www.quantum-espresso.org).
The bulk modulus is calculated by uniformly deforming a supercell of atoms and measuring the change in total energy
during compression and elongation. The first derivative of this curve is the pressure and the second derivative is
proportional to the bulk modulus. Other material properties like the heat capacity, thermal expansion or thermal conductivity
can be calculated in similar ways following the [atomistics](https://atomistics.readthedocs.io/) documentation.
532 changes: 532 additions & 0 deletions notebooks/5-1-gpaw.ipynb

Large diffs are not rendered by default.

Loading
Loading