You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+32-32Lines changed: 32 additions & 32 deletions
Original file line number
Diff line number
Diff line change
@@ -23,25 +23,25 @@ with the [ProcessPoolExecutor](https://docs.python.org/3/library/concurrent.futu
23
23
[ThreadPoolExecutor](https://docs.python.org/3/library/concurrent.futures.html#threadpoolexecutor) for parallel
24
24
execution of Python functions on a single computer. executorlib extends this functionality to distribute Python
25
25
functions over multiple computers within a high performance computing (HPC) cluster. This can be either achieved by
26
-
submitting each function as individual job to the HPC job scheduler - [HPC Submission Mode](https://executorlib.readthedocs.io/en/latest/2-hpc-submission.html) -
27
-
or by requesting a compute allocation of multiple nodes and then distribute the Python functions within this - allocation -
28
-
[HPC Allocation Mode](https://executorlib.readthedocs.io/en/latest/3-hpc-allocation.html). Finally, to accelerate the
29
-
development process executorlib also provides a - [Local Mode](https://executorlib.readthedocs.io/en/latest/1-local.html) -
30
-
to use the executorlib functionality on a single workstation for testing. Starting with the[Local Mode](https://executorlib.readthedocs.io/en/latest/1-local.html)
31
-
set by setting the backend parameter to local - `backend="local"`:
26
+
submitting each function as individual job to the HPC job scheduler with an [HPC Cluster Executor](https://executorlib.readthedocs.io/en/latest/2-hpc-cluster.html) -
27
+
or by requesting a job from the HPC cluster and then distribute the Python functions within this job with an
28
+
[HPC Job Executor](https://executorlib.readthedocs.io/en/latest/3-hpc-job.html). Finally, to accelerate the
29
+
development process executorlib also provides a [Single Node Executor](https://executorlib.readthedocs.io/en/latest/1-single-node.html) -
30
+
to use the executorlib functionality on a laptop, workstation or single compute node for testing. Starting with the
In this case the [Python simple queuing system adapter (pysqa)](https://pysqa.readthedocs.io) is used to submit the
89
89
`calc()` function to the [SLURM](https://slurm.schedmd.com) job scheduler and request an allocation with two CPU cores
90
-
for the execution of the function - [HPC Submission Mode](https://executorlib.readthedocs.io/en/latest/2-hpc-submission.html). In the background the [sbatch](https://slurm.schedmd.com/sbatch.html)
90
+
for the execution of the function - [HPC Cluster Executor](https://executorlib.readthedocs.io/en/latest/2-hpc-submission.html). In the background the [sbatch](https://slurm.schedmd.com/sbatch.html)
91
91
command is used to request the allocation to execute the Python function.
92
92
93
-
Within a given [SLURM](https://slurm.schedmd.com)allocation executorlib can also be used to assign a subset of the
93
+
Within a given [SLURM](https://slurm.schedmd.com)job executorlib can also be used to assign a subset of the
94
94
available computing resources to execute a given Python function. In terms of the [SLURM](https://slurm.schedmd.com)
95
95
commands, this functionality internally uses the [srun](https://slurm.schedmd.com/srun.html) command to receive a subset
96
96
of the resources of a given queuing system allocation.
Copy file name to clipboardExpand all lines: docs/installation.md
+9-9Lines changed: 9 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -33,10 +33,10 @@ used. The mpi4py documentation covers the [installation of mpi4py](https://mpi4p
33
33
in more detail.
34
34
35
35
## Caching
36
-
While the caching is an optional feature for [Local Mode](https://executorlib.readthedocs.io/en/latest/1-local.html) and
37
-
for the distribution of Python functions in a given allocation of an HPC job scheduler [HPC Allocation Mode](https://executorlib.readthedocs.io/en/latest/3-hpc-allocation.html),
38
-
it is required for the submission of individual functions to an HPC job scheduler [HPC Submission Mode](https://executorlib.readthedocs.io/en/latest/2-hpc-submission.html).
39
-
This is required as in [HPC Submission Mode](https://executorlib.readthedocs.io/en/latest/2-hpc-submission.html) the
36
+
While the caching is an optional feature for [Single Node Executor](https://executorlib.readthedocs.io/en/latest/1-single-node.html) and
37
+
for the distribution of Python functions in a given allocation of an HPC job scheduler [HPC Job Executors](https://executorlib.readthedocs.io/en/latest/3-hpc-job.html),
38
+
it is required for the submission of individual functions to an HPC job scheduler [HPC Cluster Executors](https://executorlib.readthedocs.io/en/latest/2-hpc-cluster.html).
39
+
This is required as in [HPC Cluster Executors](https://executorlib.readthedocs.io/en/latest/2-hpc-cluster.html) the
40
40
Python function is stored on the file system until the requested computing resources become available. The caching is
41
41
implemented based on the hierarchical data format (HDF5). The corresponding [h5py](https://www.h5py.org) package can be
42
42
installed using either the [Python package manager](https://pypi.org/project/h5py/):
@@ -51,12 +51,12 @@ Again, given the C++ bindings of the [h5py](https://www.h5py.org) package to the
51
51
recommended. The h5py documentation covers the [installation of h5py](https://docs.h5py.org/en/latest/build.html) in
52
52
more detail.
53
53
54
-
## HPC Submission Mode
55
-
[HPC Submission Mode] requires the [Python simple queuing system adatper (pysqa)](https://pysqa.readthedocs.io) to
54
+
## HPC Cluster Executor
55
+
[HPC Cluster Executor](https://executorlib.readthedocs.io/en/latest/2-hpc-cluster.html) requires the [Python simple queuing system adatper (pysqa)](https://pysqa.readthedocs.io) to
56
56
interface with the job schedulers and [h5py](https://www.h5py.org) package to enable caching, as explained above. Both
57
57
can be installed via the [Python package manager](https://pypi.org/project/pysqa/):
58
58
```
59
-
pip install executorlib[submission]
59
+
pip install executorlib[cluster]
60
60
```
61
61
Or alternatively using the [conda package manager](https://anaconda.org/conda-forge/pysqa):
62
62
```
@@ -67,8 +67,8 @@ dependencies, still at least for [SLURM](https://slurm.schedmd.com) no additiona
67
67
documentation covers the [installation of pysqa](https://pysqa.readthedocs.io/en/latest/installation.html) in more
68
68
detail.
69
69
70
-
## HPC Allocation Mode
71
-
For optimal performance in [HPC Allocation Mode](https://executorlib.readthedocs.io/en/latest/3-hpc-allocation.html) the
70
+
## HPC Job Executor
71
+
For optimal performance in [HPC Allocation Mode](https://executorlib.readthedocs.io/en/latest/3-hpc-job.html) the
72
72
[flux framework](https://flux-framework.org) is recommended as job scheduler. Even when the [Simple Linux Utility for Resource Management (SLURM)](https://slurm.schedmd.com)
73
73
or any other job scheduler is already installed on the HPC cluster. [flux framework](https://flux-framework.org) can be
74
74
installed as a secondary job scheduler to leverage [flux framework](https://flux-framework.org) for the distribution of
Copy file name to clipboardExpand all lines: docs/trouble_shooting.md
+3-3Lines changed: 3 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -20,8 +20,8 @@ dependency. The installation of this and other optional dependencies is covered
20
20
21
21
## Missing Dependencies
22
22
The default installation of executorlib only comes with a limited number of dependencies, especially the [zero message queue](https://zeromq.org)
23
-
and [cloudpickle](https://github.com/cloudpipe/cloudpickle). Additional features like [caching](https://executorlib.readthedocs.io/en/latest/installation.html#caching), [HPC submission mode](https://executorlib.readthedocs.io/en/latest/installation.html#hpc-submission-mode)
24
-
and [HPC allocation mode](https://executorlib.readthedocs.io/en/latest/installation.html#hpc-allocation-mode) require additional dependencies. The dependencies are explained in more detail in the
23
+
and [cloudpickle](https://github.com/cloudpipe/cloudpickle). Additional features like [caching](https://executorlib.readthedocs.io/en/latest/installation.html#caching), [HPC submission mode](https://executorlib.readthedocs.io/en/latest/installation.html#hpc-cluster-executor)
24
+
and [HPC allocation mode](https://executorlib.readthedocs.io/en/latest/installation.html#hpc-job-executor) require additional dependencies. The dependencies are explained in more detail in the
0 commit comments