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