seisflows.system.chinook ======================== .. py:module:: seisflows.system.chinook .. autoapi-nested-parse:: Chinook is the University of Alaska Fairbanks (UAF) high performance computer, operated by the Geophysical Institute's Research Computing Systems (RCS). Chinook operates on a SLURM workload manager and therefore overloads the SLURM System module. Chinook-specific parameters and functions are defined here. Information on Chinook can be found here: https://uaf-rcs.gitbook.io/uaf-rcs-hpc-docs/hpc Classes ------- .. autoapisummary:: seisflows.system.chinook.Chinook Module Contents --------------- .. py:class:: Chinook(mpiexec='mpiexec', partition='t1small', submit_to=None, **kwargs) Bases: :py:obj:`seisflows.system.slurm.Slurm` System Chinook -------------- University of Alaska Fairbanks HPC Chinook, SLURM based system Parameters ---------- :type partition: str :param partition: Chinook has various partitions which each have their own number of cores per compute node. Available are: analysis, t1small, t2small, t1standard, t2standard, gpu :type submit_to: str :param submit_to: (Optional) partition to submit the main/master job which is a serial Python task that controls the workflow. Likely this should go on 'debug' for small jobs or 't1small' for mid-to-large jobs. If not given, defaults to `partition`. Paths ----- *** .. py:attribute:: __doc__ .. py:attribute:: mpiexec :value: 'mpiexec' .. py:attribute:: partition :value: 't1small' .. py:attribute:: submit_to :value: 't1small' .. py:attribute:: _partitions .. py:property:: submit_call_header The submit call defines the SBATCH header which is used to submit a workflow task list to the system. It is usually dictated by the system's required parameters, such as account names and partitions. Submit calls are modified and called by the `submit` function. .. note:: Force the partition to run on 'Debug' since we are only running a single core job. This may run into walltime problems but for now it seems more economincal to enforce this :rtype: str :return: the system-dependent portion of a submit call .. py:method:: run_call(executable='', single=False, array=None, tasktime=None) The run call defines the SBATCH call which is used to run tasks during an executing workflow. Like the submit call its arguments are dictated by the given system. Run calls are modified and called by the `run` function :type executable: str :param exectuable: the actual exectuable to run within the SBATCH directive. Something like './script.py' :type array: str :param array: overwrite the `array` variable to run specific jobs. If not provided, then we will run jobs 0-{ntask}%{ntask_max}. Jobs should be submitted in the format of a SLURM array string, something like: 0,1,3,5 or 2-4,8-22 :type single: bool :param single: flag to get a run call that is meant to be run on the mainsolver (ntask==1), or run for all jobs (ntask times). Examples of single process runs include smoothing, and kernel combination :rtype: str :return: the system-dependent portion of a run call