Difference between revisions of "HPG Computation"
(10 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | [[Category:Scheduler]] | ||
Back to [[Getting Started]] __NOTOC__ | Back to [[Getting Started]] __NOTOC__ | ||
− | ===HiPerGator Etiquette | + | |
+ | See also [[HPG Scheduling]] | ||
+ | |||
+ | {{Note|'''Warning:''' | ||
+ | '''Do not run full-scale (normal) analyses on login nodes'''. [[Development and Testing]] is required reading. The main approach to run computational analyses is through writing [[Sample SLURM Scripts|job scripts]] and sending them to the [[SLURM_Commands|scheduler]] to run. See also Some interfaces like [[Open OnDemand]], [[Jupyter#JupyterHub|JupyterHub]], and [[Galaxy]] can manage job scheduling behind the scenes and may be more convenient than job submission from the command-line when appropriate. | ||
+ | |||
+ | '''Only run workloads from blue storage.''' This is a fast storage systems that can handle the I/O involved in research workloads. Before using <code>sbatch</code> or launching a workload interactively, make sure your working directory is a blue file path, e.g. <code>/blue/<group>/<user></code>, and not your /orange or /home directory (<code>~</code> or <code>/home/<user></code>). Use <code>pwd</code> to print working directory. | ||
+ | |||
+ | |warn}} | ||
+ | |||
+ | For more information about on how to get started using HiPerGator visit our Wiki category [https://help.rc.ufl.edu/doc/Category:Essentials Essentials], where you can find additional instructions, training, and tutorial videos. | ||
+ | |||
+ | |||
+ | [[File:Video preview.png|frameless|link=https://mediasite.video.ufl.edu/Mediasite/Play/bc7ded7444ac4ad6b3b91cd42dc88ede1d]] | ||
+ | |||
+ | ''Working with SLURM on HPG'' | ||
+ | |||
+ | ==HiPerGator Etiquette== | ||
* '''Only run workloads on compute nodes.''' Do not run scripts or applications on the login nodes beyond a [[Development_and_Testing#Login_Nodes|small quick test]]. Use <code>sbatch</code>, <code>srundev</code>, <code>salloc</code>, or <code>srun</code> to start a session on a compute node instead. | * '''Only run workloads on compute nodes.''' Do not run scripts or applications on the login nodes beyond a [[Development_and_Testing#Login_Nodes|small quick test]]. Use <code>sbatch</code>, <code>srundev</code>, <code>salloc</code>, or <code>srun</code> to start a session on a compute node instead. | ||
− | * '''Only run workloads from blue storage.''' This is a fast storage systems that can handle the I/O involved in research workloads. Before using <code>sbatch</code> or launching a workload interactively, make sure your working directory is a blue file path, e.g. <code>/blue/<group>/<user></code>, and not your home directory (<code>~</code> or <code>/home/<user></code>). Use <code>pwd</code> to print working directory. | + | * '''Only run workloads from blue storage.''' This is a fast storage systems that can handle the I/O involved in research workloads. Before using <code>sbatch</code> or launching a workload interactively, make sure your working directory is a blue file path, e.g. <code>/blue/<group>/<user></code>, and not your /orange or /home directory (<code>~</code> or <code>/home/<user></code>). Use <code>pwd</code> to print working directory. |
* '''Home directory is only for storing user readable files.''' Your 40GB home directory is the only storage on HiPerGator for which file recovery may be possible, so keep copies of scripts, configurations, or other important files here. Versions of files '''may''' be available for the previous 7 days ([[Snapshots|see information on home directory snapshots and recovering files]]), if you need to recover a file from your home directory. If you need back ups of important data, backup services will need to be purchased. | * '''Home directory is only for storing user readable files.''' Your 40GB home directory is the only storage on HiPerGator for which file recovery may be possible, so keep copies of scripts, configurations, or other important files here. Versions of files '''may''' be available for the previous 7 days ([[Snapshots|see information on home directory snapshots and recovering files]]), if you need to recover a file from your home directory. If you need back ups of important data, backup services will need to be purchased. | ||
Line 13: | Line 31: | ||
* '''Do not request excessive resources.''' This includes CPU, GPU and memory. Job emails include summary estimations of memory use, however, active monitoring will help you understand resource requirements. Applications often require special commands, arguments, or configurations to run in parallel. Therefore, you will likely need to do more than request multiple CPUs or GPUs for a workload to put those resources to use. | * '''Do not request excessive resources.''' This includes CPU, GPU and memory. Job emails include summary estimations of memory use, however, active monitoring will help you understand resource requirements. Applications often require special commands, arguments, or configurations to run in parallel. Therefore, you will likely need to do more than request multiple CPUs or GPUs for a workload to put those resources to use. | ||
− | + | ==Using installed software== | |
− | {{Note| | + | {{Note|Avoid using pip install outside of a conda environment, as it can cause package conflicts. Please look at [[Managing Python environments and Jupyter kernels]] for more details and alternatives.|warn}} |
The full list of software available for use can be viewed on the [[Installed_Software|Installed Software]] page. Access to installed software is provided through [[Modules|Environment Modules]]. | The full list of software available for use can be viewed on the [[Installed_Software|Installed Software]] page. Access to installed software is provided through [[Modules|Environment Modules]]. | ||
Line 27: | Line 45: | ||
module load <module_name> | module load <module_name> | ||
|} | |} | ||
− | In Jupyter Notebooks, kernels are available with our most popular software stacks. If you are unable to find what you need or would like software installed, please fill out a [https:// | + | In Jupyter Notebooks, kernels are available with our most popular software stacks. If you are unable to find what you need or would like software installed, please fill out a [https://support.rc.ufl.edu/ support request]. |
Line 34: | Line 52: | ||
There are some useful commands and utilities in a [[UFRC_environment_module|'ufrc' environment module]] in addition to installed applications. | There are some useful commands and utilities in a [[UFRC_environment_module|'ufrc' environment module]] in addition to installed applications. | ||
− | + | ==Interactive Testing or Development== | |
− | You don't always | + | You don't always need to use scripts to run code in the SLURM scheduler. When all you need is a quick shell session to run a command or two, write and/or test a job script, or compile some code use [[Development_and_Testing|SLURM Dev Sessions]]. |
− | + | ==Running Graphical Programs== | |
It is possible to run programs that use a graphical user interface (GUI) on the system. However, doing so requires an installation of and configuration of additional software on the client computer. | It is possible to run programs that use a graphical user interface (GUI) on the system. However, doing so requires an installation of and configuration of additional software on the client computer. | ||
Please see the [[GUI_Programs|GUI Programs]] page for information on running graphical user interface applications at UFRC. | Please see the [[GUI_Programs|GUI Programs]] page for information on running graphical user interface applications at UFRC. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Latest revision as of 16:40, 16 September 2024
Back to Getting Started
See also HPG Scheduling
Do not run full-scale (normal) analyses on login nodes. Development and Testing is required reading. The main approach to run computational analyses is through writing job scripts and sending them to the scheduler to run. See also Some interfaces like Open OnDemand, JupyterHub, and Galaxy can manage job scheduling behind the scenes and may be more convenient than job submission from the command-line when appropriate.
Only run workloads from blue storage. This is a fast storage systems that can handle the I/O involved in research workloads. Before using sbatch
or launching a workload interactively, make sure your working directory is a blue file path, e.g. /blue/<group>/<user>
, and not your /orange or /home directory (~
or /home/<user>
). Use pwd
to print working directory.
For more information about on how to get started using HiPerGator visit our Wiki category Essentials, where you can find additional instructions, training, and tutorial videos.
Working with SLURM on HPG
HiPerGator Etiquette
- Only run workloads on compute nodes. Do not run scripts or applications on the login nodes beyond a small quick test. Use
sbatch
,srundev
,salloc
, orsrun
to start a session on a compute node instead.
- Only run workloads from blue storage. This is a fast storage systems that can handle the I/O involved in research workloads. Before using
sbatch
or launching a workload interactively, make sure your working directory is a blue file path, e.g./blue/<group>/<user>
, and not your /orange or /home directory (~
or/home/<user>
). Usepwd
to print working directory.
- Home directory is only for storing user readable files. Your 40GB home directory is the only storage on HiPerGator for which file recovery may be possible, so keep copies of scripts, configurations, or other important files here. Versions of files may be available for the previous 7 days (see information on home directory snapshots and recovering files), if you need to recover a file from your home directory. If you need back ups of important data, backup services will need to be purchased.
- Do not install new software when using existing modules. This will cause errors when using our software environments, because the new installation is in your local folder. If you need to install software, create a Conda virtual environment, or open a support ticket to request RC to install the software in one of our software environments if it will be widely used.
- Do not run workloads from orange storage. Orange is intended as long-term, archival storage of data you currently do not use. It cannot handle the high-throughput requirements of high-performance computing workloads.
- Do not request excessive resources. This includes CPU, GPU and memory. Job emails include summary estimations of memory use, however, active monitoring will help you understand resource requirements. Applications often require special commands, arguments, or configurations to run in parallel. Therefore, you will likely need to do more than request multiple CPUs or GPUs for a workload to put those resources to use.
Using installed software
The full list of software available for use can be viewed on the Installed Software page. Access to installed software is provided through Environment Modules.
The following command can be used to browse the full list of available modules, along with short descriptions of the applications they make available: module spider |
To load a module, use the following command: module load <module_name> |
In Jupyter Notebooks, kernels are available with our most popular software stacks. If you are unable to find what you need or would like software installed, please fill out a support request.
For more information on loading modules to access software, view the page on the basic usage of environment modules.
There are some useful commands and utilities in a 'ufrc' environment module in addition to installed applications.
Interactive Testing or Development
You don't always need to use scripts to run code in the SLURM scheduler. When all you need is a quick shell session to run a command or two, write and/or test a job script, or compile some code use SLURM Dev Sessions.
Running Graphical Programs
It is possible to run programs that use a graphical user interface (GUI) on the system. However, doing so requires an installation of and configuration of additional software on the client computer.
Please see the GUI Programs page for information on running graphical user interface applications at UFRC.