-
-
Notifications
You must be signed in to change notification settings - Fork 22
Pass through dask-worker configuration options #3
Comments
I'll answer the last question first. Like with #4 , this can also get a bit site-specific. By default, every scheduler I know of will only request one core by default. Sometimes that will be restricted to one actual core via cgroups or taskset and other times it will just be a gentleman's agreement that if you're requesting a core, you'll only use a core and nothing will actually prevent you from using all the cores on a box. With Grid Engine and its derivatives, you request more than one core with a "parallel environment". The common ones are named, by convention (but by no means universally) "smp" and "mpi". These are also requested with template.nativeSpecification ( Given that 1-core non-parallel-environment jobs will likely be scheduled fastest, the easiest thing to do is probably to schedule as many of those as possible in an array job (as DRMAACluster seems to be doing) and only use a single thread/core. |
OK, using a single core by default seems like the sane default choice, perhaps coupled with some release valve to let people pass through their own specific options. |
Have opened issue ( #66 ) to discuss more how resources could be configured by checking the scheduler implementation with DRMAA and thus passing through the appropriate flags with such settings. We can also forward this information to the |
The
dask-worker
process can be configured in a variety of ways:We can pass these through fairly easily through the
DRMAACluster.__init__
orstart_workers
methods somewhat trivially.What is less trivial is if we want to control the number of CPUs or memory used by the DRMAA job and pair this with the dask-worker configuration. I'm somewhat concerned that DRMAA expects us to take up one CPU by default when we're impolitely taking up all of the CPUs on the host. It would be nice to either request a certain host configuration from the job scheduler or else observe what our expected budget is after our job is allocated.
The text was updated successfully, but these errors were encountered: