Skip to content

Allow multiple Parsl HTEx executors in ParslHTExConfig#142

Merged
gpauloski merged 1 commit intoproxystore:mainfrom
ClaudiaCumberbatch:for_PR
Sep 9, 2024
Merged

Allow multiple Parsl HTEx executors in ParslHTExConfig#142
gpauloski merged 1 commit intoproxystore:mainfrom
ClaudiaCumberbatch:for_PR

Conversation

@ClaudiaCumberbatch
Copy link
Copy Markdown
Contributor

Description

Fixes

  • Fixes #XX
  • Fixes #XX

Type of Change

  • Bug (non-breaking change which fixes an issue)
  • Enhancement (non-breaking change which adds or improves functionality)
  • Internal (refactoring, performance, and testing)
  • Breaking (fix or feature that would cause existing functionality to not work as expected)
  • Documentation (no changes to the code)
  • Development (CI workflows, packages, templates, etc.)
  • Package (package dependencies and versions)

Testing

N/A

Pull Request Checklist

Please confirm the PR meets the following requirements.

  • Relevant tags are added (breaking, bug, documentation, enhancement, package, etc.).
  • Code changes pass pre-commit (e.g., ruff, mypy, etc.).
  • Tests have been added to show the fix is effective or that the new feature works.
  • New and existing unit tests pass locally with the changes.
  • Docs have been updated and reviewed if relevant.

@gpauloski
Copy link
Copy Markdown
Contributor

Hey, @ClaudiaCumberbatch! Do you want me to review this now, or are you still working on this branch?

@ClaudiaCumberbatch
Copy link
Copy Markdown
Contributor Author

Hi Greg, I think I have finished adding this new feature so you can review it now. Thanks!

Copy link
Copy Markdown
Contributor

@gpauloski gpauloski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, Sicheng! I left to minor requests for changes.

Do you know what a multi-htex config file ends up looking like? I am curious.

@ClaudiaCumberbatch
Copy link
Copy Markdown
Contributor Author

ClaudiaCumberbatch commented Sep 7, 2024

Here is the config.toml file I used for testing this new feature.

[app]
name = "failures"
base = "cholesky"
failure_rate = 0
failure_type = "worker-killed"

[app.config]
matrix_size = 100
block_size = 50

[engine.executor]
name = "parsl-htex"
retries = 3

[engine.executor.htex.exe1]
max_workers = 4
radio_mode = "filesystem"

[engine.executor.htex.exe1.provider]
kind = "LSFProvider"
init_blocks = 1
max_blocks = 1
min_blocks = 1
nodes_per_block = 1
queue = "debug"
walltime = "00:30:00"



[engine.executor.htex.exe2]
max_workers = 4
radio_mode = "filesystem"

[engine.executor.htex.exe2.provider]
kind = "LSFProvider"
init_blocks = 1
max_blocks = 1
min_blocks = 1
nodes_per_block = 1
queue = "debug"
walltime = "00:30:00"


[engine.executor.monitoring]
hub_address = "localhost"
logging_endpoint = 'sqlite:///parsl-runinfo/monitoring.db'
resource_monitoring_interval = 1
hub_port = 55055

@ClaudiaCumberbatch
Copy link
Copy Markdown
Contributor Author

For now, I have updated the signature of get_executor() as you mentioned and the user should add label = "exe1" under [engine.executor.htex.exe1] in config.toml file.

@gpauloski
Copy link
Copy Markdown
Contributor

Thanks, @ClaudiaCumberbatch! Looks good, and the example config is good to have here in case anyone wants to refer back to it.

@gpauloski gpauloski changed the title allow multiple parsl executors Allow multiple Parsl HTEx executors in ParslHTExConfig Sep 9, 2024
@gpauloski gpauloski merged commit 6c56fe4 into proxystore:main Sep 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants