Skip to content

Commit

Permalink
Merge pull request #358 from argonne-lcf/serial_mode_fix
Browse files Browse the repository at this point in the history
split node names for machines that use full node address
  • Loading branch information
cms21 authored Jun 6, 2023
2 parents 9a02ef0 + 9f70b10 commit 52f44d4
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 10 deletions.
2 changes: 1 addition & 1 deletion balsam/_api/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ def __repr__(self) -> str:

def __str__(self) -> str:
d = self.display_dict()
return yaml.dump(d, sort_keys=False, indent=4) # type: ignore
return yaml.dump(d, sort_keys=False, indent=4)

def __eq__(self, other: Any) -> bool:
if not isinstance(other, BalsamModel):
Expand Down
11 changes: 4 additions & 7 deletions balsam/config/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -235,13 +235,10 @@ def save(self, path: Union[str, Path]) -> None:
fp.write(self.dump_yaml())

def dump_yaml(self) -> str:
return cast(
str,
yaml.dump(
json.loads(self.json()),
sort_keys=False,
indent=4,
),
return yaml.dump(
json.loads(self.json()),
sort_keys=False,
indent=4,
)

@classmethod
Expand Down
5 changes: 3 additions & 2 deletions balsam/site/launcher/_serial_mode_worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -239,15 +239,16 @@ def worker_main(

SigHandler()
site_config.enable_logging("serial_mode", filename=log_filename + f".{hostname}")
if hostname == master_host:
if hostname == master_host.split(".")[0]:
logger.info(f"Launching master subprocess on {hostname}")
master_proc = launch_master_subprocess()
else:
logger.info(f"Worker on {hostname} will connect to remote master on {master_host}")

launch_settings = site_config.settings.launcher
node_cls = launch_settings.compute_node
nodes = [node for node in node_cls.get_job_nodelist() if node.hostname == hostname]
logger.debug(f"node.hostname={node_cls.get_job_nodelist()[0].hostname} and hostname={hostname}")
nodes = [node for node in node_cls.get_job_nodelist() if node.hostname.split(".")[0] == hostname]
node_manager = NodeManager(nodes, allow_node_packing=True)
worker = Worker(
app_run=launch_settings.local_app_launcher,
Expand Down

0 comments on commit 52f44d4

Please sign in to comment.