Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Parallel trial scheduler stub using multiprocessing.Pool #939

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

bpkroth
Copy link
Contributor

@bpkroth bpkroth commented Jan 22, 2025

@jsfreischuetz here's the stub idea I had for making a parallel trial scheduler using multiprocessing.Pool.

This would be implemented in something like a class ParallelTrialScheduler in the mlos_bench.schedulers module.

Perhaps some aspects of the APIs would have to change, and certainly lots and lots of tests and some error handling and interaction with the Storage backend instead of just local dicts for state management.

I think we should probably start with something simple like this in order to complete #380. Maybe for starters it can just handle fanning out the execution of trial repeats across backend workers.

Then later your work for #926 can expand it do budgeted config scheduling and then later model adjusted scoring and unstable config detection.

For testing, I'm thinking we setup something like LocalEnv and just have them run a simple script that returns known data (e.g., maybe even just an echo back the value it's given in the config or a computation of it or some such).

Let me know if you have questions.

@bpkroth bpkroth added the WIP Work in progress - do not merge yet label Jan 22, 2025
@bpkroth bpkroth force-pushed the parallel-trial-scheduler-stub branch from 713bcc1 to ee0883c Compare January 22, 2025 20:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WIP Work in progress - do not merge yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants