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

Update threads_per_worker in example run script #926

Open
rickecon opened this issue Apr 21, 2024 · 3 comments
Open

Update threads_per_worker in example run script #926

rickecon opened this issue Apr 21, 2024 · 3 comments

Comments

@rickecon
Copy link
Member

@talumbau and @jdebacker. I think we need to make the same change in the OG-Core example run script that TJ's PR #102 made in OG-USA. We should limit the number of threads_per_worker to 1 in the dask Client class instantiation.

client = Client(n_workers=num_workers, threads_per_worker=1)
@talumbau
Copy link
Member

Thanks for opening this issue. I agree it looks like this is the right call, but I was going to ask you both to try a run with this setting on your Macs to make sure there is no regression on your side. I don't have a good sense of the default features of the Dask LocalCluster and default scheduling choices. Also I noticed that this setting exists on something called cs_config in OG-USA here:

https://github.com/PSLmodels/OG-USA/blob/master/cs-config/cs_config/functions.py#L214

Can you provide some details on what cs-config is? Second point is that we should create a central "client creation" function provided by OG-USA utilities so that we can centralize these features (we might need additional Client customization as time goes on)

@jdebacker
Copy link
Member

@talumbau asks:

Can you provide some details on what cs-config is?

the cs-config files are those used for a Compute-Studio (C/S) web application of the OG-USA model. This app has generally been run on Google Cloud Services. @kcreekdev has been doin some work recently in OG-USA related to some memory issues he's encountered on the GCS machines.

Second point is that we should create a central "client creation" function provided by OG-USA utilities so that we can centralize these features (we might need additional Client customization as time goes on)

Ok - let me know what these means. We thought it was pretty useful that the client passes through the OG-Core model and so one can set that up in the "run script" for whatever their configuration is (e.g., running on a local cluster, a cluster with Slurm scheduler, etc.). But anything that would aid users parameterizing the client correctly for their environment would be good.

@rickecon
Copy link
Member Author

rickecon commented May 16, 2024

The updating of the run script threads-per-worker part of this issue was resolved in PR #928. However, it looks like we still need to resolve how Dask clusters are created in the Compute Studio files.

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

No branches or pull requests

3 participants