cars.orchestrator.cluster.pbs_dask_cluster

Contains abstract function for PBS dask Cluster

Module Contents

Classes

PbsDaskCluster

PbsDaskCluster

Functions

start_cluster(nb_workers, walltime, out_dir[, ...])

Create a Dask cluster.

get_dashboard_link(cluster)

This function returns the dashboard address.

stop_cluster(cluster, client)

This function stops a dask cluster.

class cars.orchestrator.cluster.pbs_dask_cluster.PbsDaskCluster(conf_cluster, out_dir, launch_worker=True)

Bases: cars.orchestrator.cluster.abstract_dask_cluster.AbstractDaskCluster

PbsDaskCluster

start_dask_cluster()

Start dask cluster

cleanup()

Cleanup cluster

cars.orchestrator.cluster.pbs_dask_cluster.start_cluster(nb_workers, walltime, out_dir, timeout=600, activate_dashboard=False)

Create a Dask cluster.

Each worker will be spawned in an independent job with a single CPU allocated to it, and will use a single process. This is done to maximize CPU utilization and minimize scheduling delay.

The CARS_PBS_QUEUE environment variable, if defined, is used to specify the queue in which worker jobs are scheduled.

Parameters
  • nb_workers (int) – Number of dask workers

  • walltime (string) – Walltime for each dask worker

  • out_dir (string) – Output directory

Returns

Dask cluster and dask client

Return type

(dask_jobqueue.PBSCluster, dask.distributed.Client) tuple

This function returns the dashboard address.

Parameters

cluster (dask_jobqueue.PBSCluster) – Dask cluster

Returns

Link to the dashboard

Return type

string

cars.orchestrator.cluster.pbs_dask_cluster.stop_cluster(cluster, client)

This function stops a dask cluster.

Parameters
  • cluster (dask_jobqueue.PBSCluster) – Dask cluster

  • client (dask.distributed.Client) – Dask client