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

Scheduler #10

Merged
merged 3 commits into from
Oct 24, 2024
Merged

Scheduler #10

merged 3 commits into from
Oct 24, 2024

Conversation

panahiparham
Copy link
Owner

Partially addresses #6 by adding a Scheduler class that extracts the configurations from the metadata database and runs the experiments locally. The first two commits are small utilities that support the third and longer commit that implements the Scheduler class.

@panahiparham panahiparham requested a review from andnp October 23, 2024 02:53
uv.lock Outdated
Copy link
Owner Author

Choose a reason for hiding this comment

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

@andnp following our discussion regarding lock files, I should remove changes to this file from this pr

Copy link
Owner Author

Choose a reason for hiding this comment

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

two rebase later and the lock file is gone! 😁


@dataclass
class RunConfig:
...
Copy link
Owner Author

Choose a reason for hiding this comment

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

This commit does not contain the slurm functionality but the parent RunConfig is still defined here. I guess this is fine?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Yup, I think that's just fine!

I typically try to avoid defining generic interfaces before they are needed, but in this case we know that this will be needed in a follow-up PR.



def _run_single(self, r: RunSpec) -> None:
subprocess.run(['python', self.entry, '--part', r.part_name, '--config-id', str(r.config_id), '--seed', str(r.seed), '--version', str(r.version)])
Copy link
Owner Author

Choose a reason for hiding this comment

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

In the upcoming steps we should work on a sample main file that uses these parameters to properly setup the ml_instrumentation library for data saving and loading.

@panahiparham panahiparham merged commit 5b42a40 into main Oct 24, 2024
7 checks passed
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