Package: ncar-jobqueue
ncar-jobqueuencar-jobqueueBadgesInstallationConfigurationUsageCasperCheyenneHobartIzumiNon-NCAR machinesncar-jobqueueprovides utilities for configuringdask-jobqueuewith appropriate default settings for NCAR's clusters.The following compute servers are supported:Cheyenne (cheyenne.ucar.edu)Casper (DAV) (casper.ucar.edu)Hobart (hobart.cgd.ucar.edu)Izumi (izumi.unified.ucar.edu)BadgesCIPackageLicenseInstallationNCAR-jobqueue can be installed from PyPI with pip:python-mpipinstallncar-jobqueueNCAR-jobqueue is also available from conda-forge for conda installations:condainstall-cconda-forgencar-jobqueueConfigurationncar-jobqueueprovides a custom configuration file with appropriate default settings for different clusters. This configuration file resides in~/.config/dask/ncar-jobqueue.yaml:ncar-jobqueue.yamlcheyenne:pbs:#project: XXXXXXXXname:dask-worker-cheyennecores:18# Total number of cores per jobmemory:'109GB'# Total amount of memory per jobprocesses:18# Number of Python processes per jobinterface:ib0# Network interface to use like eth0 or ib0queue:regularwalltime:'01:00:00'resource-spec:select=1:ncpus=36:mem=109GBlog-directory:'/glade/scratch/${USER}/dask/cheyenne/logs'local-directory:'/glade/scratch/${USER}/dask/cheyenne/local-dir'job-extra:[]env-extra:[]death-timeout:60casper-dav:pbs:#project: XXXXXXXXname:dask-worker-casper-davcores:2# Total number of cores per jobmemory:'25GB'# Total amount of memory per jobprocesses:1# Number of Python processes per jobinterface:ib0walltime:'01:00:00'resource-spec:select=1:ncpus=1:mem=25GBqueue:casperlog-directory:'/glade/scratch/${USER}/dask/casper-dav/logs'local-directory:'/glade/scratch/${USER}/dask/casper-dav/local-dir'job-extra:[]env-extra:[]death-timeout:60hobart:pbs:name:dask-worker-hobartcores:10# Total number of cores per jobmemory:'96GB'# Total amount of memory per jobprocesses:10# Number of Python processes per job# interface: null              # ib0 doesn't seem to be working on Hobartqueue:mediumwalltime:'08:00:00'resource-spec:nodes=1:ppn=48log-directory:'/scratch/cluster/${USER}/dask/hobart/logs'local-directory:'/scratch/cluster/${USER}/dask/hobart/local-dir'job-extra:['-rn']env-extra:[]death-timeout:60izumi:pbs:name:dask-worker-izumicores:10# Total number of cores per jobmemory:'96GB'# Total amount of memory per jobprocesses:10# Number of Python processes per job# interface: null              # ib0 doesn't seem to be working on Hobartqueue:mediumwalltime:'08:00:00'resource-spec:nodes=1:ppn=48log-directory:'/scratch/cluster/${USER}/dask/izumi/logs'local-directory:'/scratch/cluster/${USER}/dask/izumi/local-dir'job-extra:['-rn']env-extra:[]death-timeout:60Note:To configure a default project account that is used bydask-jobqueuewhen submitting batch jobs, uncomment theprojectkey/line in~/.config/dask/ncar-jobqueue.yamland set it to an appropriate value.UsageNote:⚠️ Online documentation fordask-jobqueueis availablehere. ⚠️Casper>>>fromncar_jobqueueimportNCARCluster>>>fromdask.distributedimportClient>>>cluster=NCARCluster(project='XXXXXXXX')>>>clusterPBSCluster(0f23b4bf,'tcp://xx.xxx.x.x:xxxx',workers=0,threads=0,memory=0B)>>>cluster.scale(jobs=2)>>>client=Client(cluster)Cheyenne>>>fromncar_jobqueueimportNCARCluster>>>fromdask.distributedimportClient>>>cluster=NCARCluster(project='XXXXXXXX')>>>clusterPBSCluster(0f23b4bf,'tcp://xx.xxx.x.x:xxxx',workers=0,threads=0,memory=0B)>>>cluster.scale(jobs=2)>>>client=Client(cluster)Hobart>>>fromncar_jobqueueimportNCARCluster>>>fromdask.distributedimportClient>>>cluster=NCARCluster(project='XXXXXXXX')>>>clusterPBSCluster(0f23b4bf,'tcp://xx.xxx.x.x:xxxx',workers=0,threads=0,memory=0B)>>>cluster.scale(jobs=2)>>>client=Client(cluster)Izumi>>>fromncar_jobqueueimportNCARCluster>>>fromdask.distributedimportClient>>>cluster=NCARCluster(project='XXXXXXXX')>>>clusterPBSCluster(0f23b4bf,'tcp://xx.xxx.x.x:xxxx',workers=0,threads=0,memory=0B)>>>cluster.scale(jobs=2)>>>client=Client(cluster)Non-NCAR machinesOn non-NCAR machines,ncar-jobqueuewill warn the user, and it will usedistributed.LocalCluster:>>>fromncar_jobqueueimportNCARCluster.../ncar_jobqueue/cluster.py:17:UserWarning:UnabletodeterminewhichNCARclusteryouarerunningon...Returninga`distributed.LocalCluster`class.warn(message)>>>fromdask.distributedimportClient>>>cluster=NCARCluster()>>>clusterLocalCluster(3a7dd0f6,'tcp://127.0.0.1:64184',workers=4,threads=8,memory=17.18GB)