• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pyiron / pympipool / 6786741185

07 Nov 2023 03:33PM UTC coverage: 97.076% (-0.3%) from 97.41%
6786741185

Pull #207

github

web-flow
Merge 64e8c392d into 74d8cea8e
Pull Request #207: Universal executor

9 of 11 new or added lines in 1 file covered. (81.82%)

1 existing line in 1 file now uncovered.

498 of 513 relevant lines covered (97.08%)

0.97 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

82.61
/pympipool/__init__.py
1
import os
1✔
2
from ._version import get_versions
1✔
3
from pympipool.mpi.executor import PyMPIExecutor
1✔
4

5
try:  # The PyFluxExecutor requires flux-core to be installed.
1✔
6
    from pympipool.flux.executor import PyFluxExecutor
1✔
7

8
    flux_installed = "FLUX_URI" in os.environ
1✔
9
except ImportError:
×
NEW
10
    flux_installed = False
×
UNCOV
11
    pass
×
12

13
try:  # The PySlurmExecutor requires the srun command to be available.
1✔
14
    from pympipool.slurm.executor import PySlurmExecutor
1✔
15

NEW
16
    slurm_installed = True
×
17
except ImportError:
1✔
18
    slurm_installed = False
1✔
19
    pass
1✔
20

21

22
__version__ = get_versions()["version"]
1✔
23
del get_versions
1✔
24

25

26
class Executor:
1✔
27
    def __new__(
1✔
28
        cls,
29
        max_workers,
30
        cores_per_worker=1,
1✔
31
        init_function=None,
1✔
32
        cwd=None,
1✔
33
        sleep_interval=0.1,
1✔
34
    ):
35
        if flux_installed:
36
            return PyFluxExecutor(
37
                max_workers=max_workers,
38
                cores_per_worker=cores_per_worker,
39
                init_function=init_function,
40
                cwd=cwd,
41
                sleep_interval=sleep_interval,
42
            )
43
        elif slurm_installed:
44
            return PySlurmExecutor(
45
                max_workers=max_workers,
46
                cores_per_worker=cores_per_worker,
47
                init_function=init_function,
48
                cwd=cwd,
49
                sleep_interval=sleep_interval,
50
            )
51
        else:
52
            return PyMPIExecutor(
53
                max_workers=max_workers,
54
                cores_per_worker=cores_per_worker,
55
                init_function=init_function,
56
                cwd=cwd,
57
                sleep_interval=sleep_interval,
58
            )
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc