Skip to content

Commit f259b0a

Browse files
[Documentation] Add docstrings for modules (#687)
* [Documentation] Add docstrings for modules * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent fa99ea7 commit f259b0a

File tree

5 files changed

+30
-1
lines changed

5 files changed

+30
-1
lines changed

executorlib/__init__.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
"""
2+
Up-scale python functions for high performance computing (HPC) with executorlib. The executorlib module provides five
3+
different executor classes, namely:
4+
* SingleNodeExecutor - for testing executorlib on your local workstation, before up-scaling to HPC.
5+
* SlurmClusterExecutor - for SLURM clusters, submitting Python functions as SLURM jobs.
6+
* FluxClusterExecutor - for flux-framework clusters, submitting Python functions as flux jobs.
7+
* SlurmJobExecutor - for distributing Python functions within a given SLRUM job.
8+
* FluxJobExecutor - for distributing Python functions within a given flux job or SLRUM job.
9+
10+
In addition, the executorlib includes a BaseExecutor class to validate a given executor object is based on executorlib.
11+
Finally, the get_cache_data() function allows users to cache the content of their current cache directory in one
12+
pandas.DataFrame.
13+
"""
14+
115
from executorlib.executor.base import BaseExecutor
216
from executorlib.executor.flux import (
317
FluxClusterExecutor,

executorlib/api.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
"""
2-
External application programming interface (API) following the semantic versioning this inteface is promised to remain
2+
External application programming interface (API) following the semantic versioning this interface is promised to remain
33
stable during minor releases and any change in the interface leads to a major version bump. External libraries should
44
only use the functionality in this API in combination with the user interface defined in the root __init__.py, all other
55
functionality is considered internal and might change during minor releases.

executorlib/backend/__init__.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
"""
2+
Backend for executorlib, these are the executables called by executorlib to initialize the Python processes which
3+
receive the Python functions for execution. The backends are divided based on two criteria, once whether they are using
4+
the file based cache as it is employed by the FluxClusterExecutor and SlurmClusterExecutor versus the interactive
5+
interface and secondly whether the submitted Python function is executed MPI parallel or in serial.
6+
"""

executorlib/executor/__init__.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
"""
2+
The executor module provides five different executor classes the user interacts with, namely: SingleNodeExecutor,
3+
SlurmClusterExecutor, FluxClusterExecutor, SlurmJobExecutor and FluxJobExecutor. In addition, it includes a BaseExecutor
4+
class to validate a given executor object is based on executorlib.
5+
"""
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
"""
2+
The task schedulers are used inside executorlib to distribute Python functions for execution, the following task
3+
schedulers are available: BlockAllocationTaskScheduler, DependencyTaskScheduler, FileTaskScheduler and OneProcessTaskScheduler.
4+
"""

0 commit comments

Comments
 (0)