hpcflow-new2 0.2.0a51__py3-none-any.whl → 0.2.0a53__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- hpcflow/_version.py +1 -1
- hpcflow/sdk/submission/jobscript.py +1 -1
- hpcflow/sdk/submission/schedulers/sge.py +6 -4
- {hpcflow_new2-0.2.0a51.dist-info → hpcflow_new2-0.2.0a53.dist-info}/METADATA +1 -1
- {hpcflow_new2-0.2.0a51.dist-info → hpcflow_new2-0.2.0a53.dist-info}/RECORD +7 -7
- {hpcflow_new2-0.2.0a51.dist-info → hpcflow_new2-0.2.0a53.dist-info}/WHEEL +0 -0
- {hpcflow_new2-0.2.0a51.dist-info → hpcflow_new2-0.2.0a53.dist-info}/entry_points.txt +0 -0
hpcflow/_version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = "0.2.
|
1
|
+
__version__ = "0.2.0a53"
|
@@ -461,7 +461,7 @@ class Jobscript(JSONLike):
|
|
461
461
|
if not self.scheduler_name:
|
462
462
|
return False
|
463
463
|
|
464
|
-
support_EAR_para = self.workflow._store.
|
464
|
+
support_EAR_para = self.workflow._store._features.EAR_parallelism
|
465
465
|
if self.resources.use_job_array is None:
|
466
466
|
if self.num_elements > 1 and support_EAR_para:
|
467
467
|
return True
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from pathlib import Path
|
2
|
+
import re
|
2
3
|
import subprocess
|
3
4
|
from typing import List, Tuple
|
4
5
|
from hpcflow.sdk.submission.schedulers import Scheduler
|
@@ -41,7 +42,6 @@ class SGEPosix(Scheduler):
|
|
41
42
|
return f"{self.js_cmd} {self.array_switch} 1-{num_elements}"
|
42
43
|
|
43
44
|
def format_std_stream_file_option_lines(self, is_array, sub_idx):
|
44
|
-
|
45
45
|
# note: we can't modify the file names
|
46
46
|
base = f"./artifacts/submissions/{sub_idx}"
|
47
47
|
return [
|
@@ -50,7 +50,6 @@ class SGEPosix(Scheduler):
|
|
50
50
|
]
|
51
51
|
|
52
52
|
def format_options(self, resources, num_elements, is_array, sub_idx):
|
53
|
-
|
54
53
|
# TODO: I think the PEs are set by the sysadmins so they should be set in the
|
55
54
|
# config file as a mapping between num_cores/nodes and PE names?
|
56
55
|
# `qconf -spl` shows a list of PEs
|
@@ -86,7 +85,6 @@ class SGEPosix(Scheduler):
|
|
86
85
|
js_path: str,
|
87
86
|
deps: List[Tuple],
|
88
87
|
) -> List[str]:
|
89
|
-
|
90
88
|
cmd = [self.submit_cmd, "-terse"]
|
91
89
|
|
92
90
|
dep_job_IDs = []
|
@@ -110,5 +108,9 @@ class SGEPosix(Scheduler):
|
|
110
108
|
|
111
109
|
def parse_submission_output(self, stdout: str) -> str:
|
112
110
|
"""Extract scheduler reference for a newly submitted jobscript"""
|
113
|
-
|
111
|
+
match = re.search("^\d+", stdout)
|
112
|
+
if match:
|
113
|
+
job_ID = match.group()
|
114
|
+
else:
|
115
|
+
raise RuntimeError(f"Could not parse Job ID from scheduler output {stdout!r}")
|
114
116
|
return job_ID
|
@@ -1,7 +1,7 @@
|
|
1
1
|
hpcflow/__init__.py,sha256=WIETuRHeOp2SqUqHUzpjQ-lk9acbYv-6aWOhZPRdlhs,64
|
2
2
|
hpcflow/__pyinstaller/__init__.py,sha256=YOzBlPSck6slucv6lJM9K80JtsJWxXRL00cv6tRj3oc,98
|
3
3
|
hpcflow/__pyinstaller/hook-hpcflow.py,sha256=r57ND9UuWoWKdcHjr1UFvNSLwFpZ4FIXAb5-q8NRGis,741
|
4
|
-
hpcflow/_version.py,sha256=
|
4
|
+
hpcflow/_version.py,sha256=10KcHJvcd_afOBZcYZXPgktmFuo8t0ObTDdrg6nYqTc,25
|
5
5
|
hpcflow/app.py,sha256=aqAu60N-8rpTDevhcgcDeyY4OTvMKX0u-AWrZTIYWvI,1324
|
6
6
|
hpcflow/cli.py,sha256=G2J3D9v6MnMWOWMMWK6UEKLn_6wnV9lT_qygEBBxg-I,66
|
7
7
|
hpcflow/examples.ipynb,sha256=cLKp4QsxwwMXRanDnfWY9kqsV23q6G4raOpu6IZXnMw,28553
|
@@ -69,10 +69,10 @@ hpcflow/sdk/persistence/zarr.py,sha256=9ewEwAbgAoRRLGRpMDIZmaTmsbLQ7o802N0HdYL1u
|
|
69
69
|
hpcflow/sdk/runtime.py,sha256=cXBWN-hCWG9asREqq3bB5tqLa_tPom9kJWVb_ERief4,6826
|
70
70
|
hpcflow/sdk/scripting/__init__.py,sha256=9RBz9rrf2QWU6Ayxx7LRtaDQEaqTbjRmXuHPhg4h020,110
|
71
71
|
hpcflow/sdk/submission/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
72
|
-
hpcflow/sdk/submission/jobscript.py,sha256=
|
72
|
+
hpcflow/sdk/submission/jobscript.py,sha256=e2oiuD8hwpD3iSy0jiRJp9GV2iO9p_K-oSJe7j292ME,31772
|
73
73
|
hpcflow/sdk/submission/schedulers/__init__.py,sha256=AUnwoi3zCbiolcEG9XHLHMA3oBn02JaHiyX8sPNoOh4,1668
|
74
74
|
hpcflow/sdk/submission/schedulers/direct.py,sha256=wlQyxWFsT2KsM2vG5Tgl81x74TQ1RYIlrq-Ir4Xk6jQ,451
|
75
|
-
hpcflow/sdk/submission/schedulers/sge.py,sha256=
|
75
|
+
hpcflow/sdk/submission/schedulers/sge.py,sha256=aBwrwud5je6wKZUyDLgb9PneGLnEQwGSnxT5FdVF26I,3601
|
76
76
|
hpcflow/sdk/submission/schedulers/slurm.py,sha256=BgamKYB_822wmWHVPBzkSaUuE1ydWMdo9kXtpgmwB44,3926
|
77
77
|
hpcflow/sdk/submission/shells/__init__.py,sha256=q5Tpm6gxAHhIw-WjBe8Ojqbc0A_UJMO-W68-2deHB0U,1008
|
78
78
|
hpcflow/sdk/submission/shells/base.py,sha256=P2MjfHlOtTiV-ouM1UUhDCEcq412JBglDxKEOvuhC3A,1645
|
@@ -98,7 +98,7 @@ hpcflow/tests/unit/test_task_schema.py,sha256=7a7o42gQhrZPMXfH0a6sGzFCJnuFrbDEl9
|
|
98
98
|
hpcflow/tests/unit/test_utils.py,sha256=C-0rd7-gEZY_TJItJcSdN1TVPuHsOUfVfl0NscFRg8I,11200
|
99
99
|
hpcflow/tests/unit/test_workflow.py,sha256=L6CwJmUsslUr8IleLZfoWWpf5-UL-1Rg5Y-UB6qpa8Y,8020
|
100
100
|
hpcflow/viz_demo.ipynb,sha256=1QdnVsk72vihv2L6hOGyk318uEa22ZSgGxQCa7hW2oo,6238
|
101
|
-
hpcflow_new2-0.2.
|
102
|
-
hpcflow_new2-0.2.
|
103
|
-
hpcflow_new2-0.2.
|
104
|
-
hpcflow_new2-0.2.
|
101
|
+
hpcflow_new2-0.2.0a53.dist-info/METADATA,sha256=yjaJ5Mrs3W2-Op9Jw6AZfePHfv5CA9ssWtXym9Ma1TA,1802
|
102
|
+
hpcflow_new2-0.2.0a53.dist-info/WHEEL,sha256=kLuE8m1WYU0Ig0_YEGrXyTtiJvKPpLpDEiChiNyei5Y,88
|
103
|
+
hpcflow_new2-0.2.0a53.dist-info/entry_points.txt,sha256=aoGtCnFdfPcXfBdu2zZyMOJoz6fPgdR0elqsgrE-USU,106
|
104
|
+
hpcflow_new2-0.2.0a53.dist-info/RECORD,,
|
File without changes
|
File without changes
|