salloc(1) --time=1:00:0 --ntasks=1 --mem-per-cpu=3600 --gres=gpu:1 --account=def-someprof
Obtain a SLURM job allocation (a set of nodes), execute a command, and then release the allocation when the command is finished
-t, --time=<time>
       Set a limit on the total run time of the job allocation.  If the requested time limit exceeds  the
       partition's  time  limit,  the  job  will be left in a PENDING state (possibly indefinitely).  The
       default time limit is the partition's time limit.  When the time limit is reached, the  each  task
       in each job step is sent SIGTERM followed by SIGKILL. The interval between signals is specified by
       the SLURM configuration parameter KillWait.  A time limit of zero requests that no time  limit  be
       imposed.   Acceptable  time formats include "minutes", "minutes:seconds", "hours:minutes:seconds",
       "days-hours", "days-hours:minutes" and "days-hours:minutes:seconds".
-n, --ntasks=<number>
       salloc  does  not  launch tasks, it requests an allocation of resources and executed some command.
       This option advises the SLURM controller that job steps run within this allocation will  launch  a
       maximum of number tasks and sufficient resources are allocated to accomplish this.  The default is
       one task per node, but note that the --cpus-per-task option will change this default.
--mem-per-cpu=<MB>
       Mimimum  memory  required  per  allocated CPU in MegaBytes.  Default value is DefMemPerCPU and the
       maximum value is MaxMemPerCPU (see exception below). If configured, both of parameters can be seen
       using  the  scontrol  show config command.  Note that if the job's --mem-per-cpu value exceeds the
       configured MaxMemPerCPU, then the user's limit will  be  treated  as  a  memory  limit  per  task;
       --mem-per-cpu  will be reduced to a value no larger than MaxMemPerCPU; --cpus-per-task will be set
       and value of --cpus-per-task multiplied by the new --mem-per-cpu value  will  equal  the  original
       --mem-per-cpu  value  specified by the user.  This parameter would generally be used if individual
       processors are allocated  to  jobs  (SelectType=select/cons_res).   Also  see  --mem.   --mem  and
       --mem-per-cpu are mutually exclusive.
--gres=<list>
       Specifies a comma delimited list of generic consumable resources.  The format of each entry on the
       list  is  "name[:count[*cpu]]".   The  name  is that of the consumable resource.  The count is the
       number of those resources with a default value of 1.  The specified resources will be allocated to
       the  job  on  each  node  allocated unless "*cpu" is appended, in which case the resources will be
       allocated on a per cpu basis.  The available generic consumable resources is configurable  by  the
       system  administrator.   A  list of available generic consumable resources will be printed and the
       command  will  exit   if   the   option   argument   is   "help".    Examples   of   use   include
       "--gres=gpus:2*cpu,disk=40G" and "--gres=help".
-A, --account=<account>
       Charge  resources  used by this job to specified account.  The account is an arbitrary string. The
       account name may be changed after job submission using the scontrol command.
source manpages: salloc