occam-build

Description:

This command let you build and push to internal registry your docker images using the occam's nodes.

Usage:

occam-build [-n nodename] [--tag TAG] [ --build-arg BARGS ] [--force-rm ] [ --label LABEL] [--no-cache] [--pull] [--quiet] [ --rm]

where:

  • -n = node name
  • --tag = the image tag: before building, you should create a project on gitlab to store the resultant image
  • --build-arg = Set build-time variables
  • --force-rm = Always remove intermediate containers
  • --label = Set metadata for an image
  • --no-cache = Do not use cache when building the image
  • --pull = Always attempt to pull a newer version of the image
  • --quiet = Suppress the build output and print image ID on success
  • --rm = Remove intermediate containers after a successful build

occam-exec

Description:

This command let you exec a commandi into a running container task in a node.

Usage:

occam-exec taskid command

where:

  • taskid = the task id of your running container in the form nodeXX-YYYY where XX and YYYY are integers
  • command = a legal command to be run in your running container.

occam-inspect

Description:

This command let you view an htop (http://hisham.hm/htop/) interactive process viewer for computations running on a node.

Usage:

occam-inspect [-n nodename]

where:

  • -n = computation node name

occam-inspect-farm

Description:

This command let you view the status of a farm.

Usage:

occam-inspect-farm farmname

where:

  • farmname = the short name of your farm

occam-kill

Description:

This command let you stop a computation running on a node.

Usage:

occam-kill [-n nodename] computation-ID

where:

  • -n = computation node name
  • computation-ID = the ID as shown by the occam-run command; in interactive mode, exiting from the shell, closes automatically that computation.

occam-login

Description:

This command let you sign in to the internal occam registry: if you own more than an occam account, then you can access to different private registry switching between them with occam-login.

Usage:

occam-login

occam-nvidia-smi

Description:

This command let you view the nVidia GPU status (usable on GPU nodes only!!).

Usage:

occam-nvidia-smi [-n nodename]

where:

  • -n = GPU computation node name

occam-remnode

Description:

This command let you remove a the node from your farm.

Usage:

occam-inspect -n nodename -f farmname

where:

  • -n = computation node name to remove
  • farmname = the short name of your farm

occam-run

Description:

This command let you run computation on the OCCAM nodes.

Usage:

occam-run [-n nodename] [-i] [-x] [-w] [-c file] [-s value] [-v realpath:virtualpath]* IMAGE_NAME [CMD] [PARAMETERS]

where:

  • -n = computation node name (use the name without the prefix Light/Fat/Gpu and removing also the suffix Q0/Q1/Q2/Q3)
  • -i = interactive mode (will substitute entrypoint or cmd with a call to /bin/bash) ** use only for testing purposes
  • -x = X11 mode (this enable the usage of tools that require an X11 server to run
  • -p = tcp connection port, not used anymore, but usually 22; obsolete
  • -c = Write the job ID to the file (must be a path into your user area, eg. /archive/home/myusername/jobid.txt)
  • -w = run a windows Virtual Machine with a Remote Desktop access to it
  • -s = set the shared memory size for the container: must be greater than 0. Unit is optional and can be b (bytes), k (kilobytes), m (megabytes), or g (gigabytes)
  • -v = mount custom volumes inside the container (realpath must be a path into users areas, eg. /archive/home/myusername/mydir or /scratch/home/mycollegue/dir2)
  • IMAGE_NAME = you image name composed by YOURUSERNAME/PROJECTNAME
  • CMD = optional command to exec (only real executable, not scripts, or you'll get errors)
  • PARAMETERS = optional parameters to your computation

Notes:

The interactive and X11 modes are usable either singularly or together:

Scenario Interactive (-i) X11 (-x)
Commands that runs in background NO NO
Testing commands interactively YES NO
Commands that needs X11 for computation NO YES (*)
Testing commands in X11 YES YES (**)

(*) use -X ssh option and occam-x11 to get the screen on your desktop/laptop (**) use -X ssh option to get the screen directly redirected to your desktop/laptop

CPU cores Association

The cores are automatically assigned to the job using the booking information. Each slot owns 1/4 of the cores of the node, i.e. a slot of a LightNode runs on 6 core chosen from the same CPU, following the rule of the minimum numa distance. An environment variable TOTALPROC is set to the actual number of cores assigned to the job and should be used to trigger your software parallelism.

GPU Association:

If the node is equipped with two GPUs, the first GPU is associated to the first two slots Q0/Q1 and the second one to the slots Q2/Q3.


occam-shell

Description:

This command let you open a new bash shell to a running container task in a node.

Usage:

occam-shell taskid

where:

  • taskid = the task id of your running container in the form nodeXX-YYYY where XX and YYYY are integers

occam-wait

Description:

This command let you synchronously wait for job termination

Usage:

occam-wait [-m] [job identifier]

where:

  • -m = send an email to the current user when finished
  • job identifier = is the job identifier as printed out by occam-run command (e.g. node22-123412)

occam-x11

Description:

This command let you show the screen for computation running on a node in X11 mode detached. When executed this command will require an -X option in you ssh connection and the password for you remote X screen

Usage:

occam-x11[-n nodename]

where:

  • -n = computation node name