Difference between revisions of "Getting Started"

From UFRC
Jump to navigation Jump to search
 
(136 intermediate revisions by 11 users not shown)
Line 1: Line 1:
[[Category:Docs]]
+
[[Category:Essentials]]
{|align=right
+
Welcome to UF Research Computing! This page is intended to help new clients getting started on HiPerGator use.
  |__TOC__
 
  |}
 
Welcome to UF Research Computing! This page is intended to help new and uninitiated users understand and use UFRC resources. Be sure to check out [https://wiki.rc.ufl.edu/doc/Training our training schedule] if you'd like help getting started in person!
 
==Overview==
 
The diagram below shown a high-level overview of HiPerGator use. We will go over each part in sections below
 
[[file:HiPerGator.png|800px]]
 
  
 +
Note that new users are highly encouraged to take the [[New_user_training|New User Training]] course to familiarize themselves with using a supercomputer for research, save time, and avoid many beginner mistakes.
  
==Creating an Account==
 
To be able to do ''anything'' on HiPerGator you need a UF Research Computing account. To create an account with UF Research Computing, you must read the [https://www.rc.ufl.edu/about/policies/account/ UFRC Account Policy]. After you have reviewed the policy, go to [https://www.rc.ufl.edu/help/account-request/ our website to submit an account request]. You will have to tell us the name of the Principal Investigator (PI) who sponsors the access of the group. Once the PI approves your access to their allocation your account will be created; the username and password will be the same as your GatorLink username and password.
 
  
If you are a new Principal Investigator you will need to indicate this on the request form, so that we can create a new group for you. Please note that to do useful work, your group will have to [https://www.rc.ufl.edu/services/rates/ invest into computational resources], or you will have to join a departmental group with a shared allocation.
+
=From Zero to HiPerGator=
 +
===Initial Consult===
 +
If a face-to-face discussion about the group's needs is needed you can [https://outlook.office365.com/owa/calendar/UFITResearchComputingSupport@uflorida.onmicrosoft.com/bookings/ schedule an appointment] to [https://www.rc.ufl.edu/get-support/walk-in-support/ meet with one of the UF Research Computing Facilitators] face-to-face or virtually, or [https://support.rc.ufl.edu/ submit a support request to start the conversation].
  
==Connecting to HiPerGator==
 
To work on HiPerGator you will have to connect to it from your local computer either via SSH (terminal session) or via one of the web/application interfaces we provide such as [[Galaxy]] or Matlab (for Matlab distributed computing toolbox pilot project we are testing).
 
  
''Note about using this guide:'' for any given command, <code><username></code> should be replaced with the UFRC username (same as your GatorLink username).
+
For the initial interview we recommend prospective users to be ready to answer questions such as:
  
For example, if you are referencing the command <code>ssh <username>@hpg2.rc.ufl.edu</code> and your Gatorlink username is '''smith''', you would use the command:
+
* Does the data fall under FERPA, HIPAA, or another restricted classification?
<pre style="width:75%;">ssh smith@hpg2.rc.ufl.edu</pre>
+
* Explain in simple words what your research is about.
 +
* What file types will be processed initially?
 +
** Input files, average size of individual files, total amount of data in Gb/Tb, etc.
 +
* What software or pipeline is needed to process the files?
 +
Define success for you:
 +
* What is the expected output?
 +
** Expected results, output file types and individual file size, amount of data produced after processing in Gb/Tb.
 +
* Do you have any estimations on compute needs?
 +
* Are you or will you be working with external collaborators?
  
===Connecting from Windows===
+
===HiPerGator Accounts===
<div class="mw-collapsible mw-collapsed" style="width:70%; padding: 5px; border: 1px solid gray;">
+
====Sponsor Username and Group Creation====
''Expand this section to view instructions for logging in with Windows.''
+
The group's sponsor has to be the first person to [https://www.rc.ufl.edu/access/account-request/ request a HiPerGator account] indicating that they are a new sponsor. In the process we will create their sponsored group.
<div class="mw-collapsible-content" style="padding: 5px;">
 
Since Microsoft Windows does not come with a built-in SSH client, you must download a client from the web.  
 
  
UFRC recommends using [http://www.chiark.greenend.org.uk/~sgtatham/putty PuTTY] or [http://mobaxterm.mobatek.net/ MobaXterm].  
+
====User Account Creation====
 +
Group members will be able to [https://www.rc.ufl.edu/access/account-request/ submit HiPerGator account requests] indicating their PI as the sponsor. Once approved, their HPG Linux accounts will be created.
  
'''PuTTY'''
+
====Joining a Group====
* [http://www.chiark.greenend.org.uk/~sgtatham/putty Download PuTTY] to your local machine and start the program .
+
Once their HPG username is created users must [https://support.rc.ufl.edu submit a request] to be added to a sponsor's group. Once the sponsor or an assigned manager replies to the request with approval, the user is added to the requested group. Accounts can only be added to groups with active resource allocations (see below for details).
* Connect to hpg2.rc.ufl.edu.
 
* At the login prompt, enter your username (this should be the same as your GatorLink username)
 
* Enter your password when prompted. You are now connected and ready to work!
 
  
'''MobaXterm'''
+
[https://support.rc.ufl.edu Request to be added to a group]:
* [http://mobaxterm.mobatek.net/ Download MobaXterm] to your local machine and start the program.
+
* Include the following in the Summary line: "Add [username] to [groupname] group".
* Click "Start local terminal"
+
* Include the reason in the request's description.
* Open a terminal and run <code>ssh <username>@hpg2.rc.ufl.edu</code>
+
* If possible, add your sponsor's email to the ticket's CC list.
* Enter your password when prompted. You are now connected and ready to work!
+
 
</div>
+
===Trial Allocation===
</div>
+
We recommend that the group's sponsor [https://gravity.rc.ufl.edu/access/request-trial-allocation/ request a '''free''' trial allocation] for storage and computational resources to get the group started on HiPerGator. Group members can then use HiPerGator for the 3 month duration of the trial allocation to figure out what resources and applications they really need.
  
===Connecting from Linux===
+
===Purchasing Resources===
<div class="mw-collapsible mw-collapsed" style="width:70%; padding: 5px; border: 1px solid gray;">
+
After or while the group uses a trial allocation to determine the computational and storage resources it needs the group's sponsor can submit a purchase request for [https://gravity.rc.ufl.edu/access/purchase-request/hpg-hardware/ hardware (5-years)] or [https://gravity.rc.ufl.edu/access/purchase-request/hpg-service/ services (3-months to longer)] to invest into the resources to cover the group's HiPerGator use.
''Expand this section to view instructions for logging in with Linux/Unix.''
 
<div class="mw-collapsible-content" style="padding: 5px;">
 
Open a terminal and run
 
ssh <username>@hpg2.rc.ufl.edu
 
  
Enter your password when the prompt appears. You are now connected and ready to work!
+
Some groups may have access to shared departmental allocations. In this case, instead of purchasing resources, group members can [https://support.rc.ufl.edu/ request] to be added to the departmental group to gain access to the shared resources.
</div>
 
</div>
 
  
===Connecting from MacOS X===
+
Some examples of departments with shared allocations include the [http://ufgi.ufl.edu/ Genetics Institute], [http://epi.ufl.edu/ Emerging Pathogens Institute], [https://stat.ufl.edu/ Statistics Department], [http://biostat.ufl.edu/ Biostatistics Department], [https://www.eng.ufl.edu/ccmt/ Center for Compressible Multiphase Turbulence (CCMT)], [https://chp.phhp.ufl.edu/research/affiliated-centers/center-for-cognitive-aging-memory-cam/ Cognitive Aging and Memory Clinical Translational Research Program (CAMCTRP)], [https://efrc.ufl.edu/ Center for Molecular Magnetic Quantum Materials], [https://www.phys.ufl.edu/ Physics Department], and [https://plantpath.ifas.ufl.edu/ Plant Pathology Department]. In addition, several research groups working on collaborative projects have shared allocations accessible to members of those projects.
<div class="mw-collapsible mw-collapsed" style="width:70%; padding: 5px; border: 1px solid gray;">
 
''Expand this section to view instructions for logging in with OS X.''
 
<div class="mw-collapsible-content" style="padding: 5px;">
 
For OS X users, connection instructions are very similar to those for Linux users.
 
  
'''Terminal''', the terminal emulation application for OS X, is located in the folder Applications/Utilities.
+
'''At this point a group is established on HiPerGator and can continue their computational work. See below for more details on the basic use.'''
  
Start the Terminal application and run
+
=Using HiPerGator=
ssh <username>@hpg2.rc.ufl.edu
+
To use HiPerGator or HiPerGator-AI you must have basic understanding the following concepts:
 +
* Use the various [[HPG Interfaces]] to connect to the system.
 +
* See [[HPG Computation]] for an overview of running analyses on HiPerGator.
 +
* Read [[HPG Scheduling]] for an overview of managing resources in jobs.
 +
* Learn how to manage data on the filesystems in [[Storage]] and how to transfer it in or out in [[HPG Data Management]].
  
Enter your password when the prompt appears. You are now connected and ready to work!
+
Click on the buttons below to explore.
</div>
+
<div style = 'text-align: center;'>
 +
[[Image:Interface.png|frameless|upright=1| link=HPG Interfaces]]
 +
[[Image:Computation.png|frameless|upright=1|link=HPG Computation]]
 +
[[Image:Scheduling.png|frameless|upright=1|link=HPG Scheduling]]
 +
[[Image:Storage.png|frameless|upright=1|link=HPG Data Management]]
 
</div>
 
</div>
  
==Transferring Data==
+
=Getting help=
If you need to transfer datasets to or from HiPerGator and your local computer or another external location you have to pick the appropriate transfer mechanism.
+
If you are having problems using the UFRC system, try our resources at [https://help.rc.ufl.edu/doc/Category:Help Help] or let our staff know by submitting a [http://support.rc.ufl.edu support request].
 
 
===Samba===
 
Samba service, also known as a '<code>network share</code>' or '<code>mapped drive</code>' provides you with an ability to connect to some HiPerGator filesystems as locally mapped drives (or mount points on Linux or MacOS X). Once you connected to a share this mechanism provides you with a file transfer option that allows you to use your client computer's native file manager to access and manage your files. Samba works best for moving smaller files, like job scripts, to and from the system. You must be connected to the UF network (either on-campus or through the [[VPN]]) to connect to Samba shares.
 
 
 
* [[Samba_Access|See the page on accessing Samba]] for setup information specific to your computer's operating system.
 
 
 
===SFTP===
 
SFTP, or secure file transfer, works well for small to mediaum data transfers and is appropriate for both small and large data files.
 
 
 
If you would like to use a Graphical User Interface ecure file transfer client we recommend:
 
* [https://filezilla-project.org/download.php?show_all=1 FileZilla] for Windows or MacOS X.
 
* [http://winscp.net/eng/index.php WinSCP] for Windows.
 
* [http://cyberduck.ch/ Cyberduck] for MacOS X.
 
 
 
After you have chosen and downloaded a client, configure the client to connect to <code>sftp.rc.ufl.edu</code>, specifying port number 22. Use your username and password to log in.
 
 
 
===Rsync===
 
If you prefer to use the command-line or to get maximum efficiency from your data transfers Rsync, which is an incremental file transfer utility that minimizes network usage, is a good choice. It does so by transmitting only the differences between local and remote files rather than transmitting complete files every time a sync is run as SFTP does. Rsync is best used for tasks like synchronizing files stored across multiple subdirectories, or updating large data sets. It works well both for small and large files. [[Rsync|See the Rsync page]] for instructions on using rsync.
 
 
 
===Globus===
 
Globus is a high-performance mechanism for file transfer. Globus works especially well for transferring large files or data sets
 
 
 
* [[Globus|See the Globus page]] for setup and configuration information.
 
 
 
===Automounted Paths===
 
Note: NFS-based storage on our systems are typically automounted, which means they are dynamically mounted only when users are actually accessing them. For example if you have an invested folder as /orange/smith, to access it you will have to specifically type in the full path of "/orange/smith" to be able to see the contents and access them. Directly browsing /orange will not show the smith sub-folder unless someone else is using it coincidentally. Automounted folders are pretty common on the systems, they include /orange, /bio, /rlts and even /home etc.
 
 
 
==Editing your files==
 
Several methods exist for editing your files on the cluster.
 
===Native Editors===
 
* '''vi''' - The visual editor (vi) is the traditional Unix editor; however, it is not necessarily the most intuitive editor. [http://www.eng.hawaii.edu/Tutor/vi.html View a tutorial for using vi]
 
* '''emacs''' - Emacs is a much heavier duty editor, but again has the problem of having commands that are non-intuitive. [http://www2.lib.uchicago.edu/~keith//tcl-course/emacs-tutorial.html View a tutorial for using emacs]
 
* '''pico''' - While pico is not installed on the system, nano is installed, and is a pico work-a-like.
 
* '''nano''' - Nano has a good bit of on-screen help to make it easier to use.
 
 
 
===External Editors===
 
You can also use your favorite file editor on your local machine, and then transfer the files to the cluster afterward. A caveat to this is that files created on Windows machines usually contain unprintable characters, which may be misinterpreted by Linux command interpreters (shells). If this happens, there is a utility called <code>dos2unix</code> that you can use to convert the text file from DOS/Windows formatting to Linux formatting.
 
 
 
==Using installed software==
 
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 following command can be used to browse the full list of available modules, along with short descriptions of the applications they make available:
 
<pre>
 
module spider
 
</pre>
 
 
 
To load a module, use the following command:
 
<pre>
 
module load <module_name>
 
</pre>
 
 
 
For more information on loading modules to access software, view the page on the [[Modules_Basic_Usage|basic usage of environment modules]].
 
 
 
==Doing Interactive Testing or Development==
 
You don't always have to use 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.
 
 
 
Please see the [[GUI_Programs|GUI Programs]] page for information on running graphical user interface applications at UFRC.
 
 
 
==Scheduling jobs using SLURM==
 
UFRC uses the Simple Linux Utility for Resource Management, or '''SLURM''', to allocate resources and schedule jobs. Users can create SLURM job scripts to submit jobs to the system. These scripts can, and should, be modified in order to control several aspects of your job, like resource allocation, email notifications, or an output destination.
 
 
 
* See the [[Annotated_SLURM_Script|Annotated SLURM Script]] for a walk-through of the basic components of a SLURM job script
 
* See the [[Sample_SLURM_Scripts|Sample SLURM Scripts]] for several SLURM job script examples
 
 
 
 
 
To submit a job script from one of login nodes via hpg2.rc.ufl.edu, use the following command:
 
<pre>
 
$ sbatch <your_job_script>
 
</pre>
 
To check the status of submitted jobs, use the following command:
 
<pre>
 
$ squeue -u <username>
 
</pre>
 
 
 
View [[SLURM_Commands]] for more useful SLURM commands.
 
 
 
==Getting help==
 
If you are having problems using the UFRC system, please let our staff know by submitting a [http://support.rc.ufl.edu support request].
 

Latest revision as of 17:56, 19 August 2024

Welcome to UF Research Computing! This page is intended to help new clients getting started on HiPerGator use.

Note that new users are highly encouraged to take the New User Training course to familiarize themselves with using a supercomputer for research, save time, and avoid many beginner mistakes.


From Zero to HiPerGator

Initial Consult

If a face-to-face discussion about the group's needs is needed you can schedule an appointment to meet with one of the UF Research Computing Facilitators face-to-face or virtually, or submit a support request to start the conversation.


For the initial interview we recommend prospective users to be ready to answer questions such as:

  • Does the data fall under FERPA, HIPAA, or another restricted classification?
  • Explain in simple words what your research is about.
  • What file types will be processed initially?
    • Input files, average size of individual files, total amount of data in Gb/Tb, etc.
  • What software or pipeline is needed to process the files?

Define success for you:

  • What is the expected output?
    • Expected results, output file types and individual file size, amount of data produced after processing in Gb/Tb.
  • Do you have any estimations on compute needs?
  • Are you or will you be working with external collaborators?

HiPerGator Accounts

The group's sponsor has to be the first person to request a HiPerGator account indicating that they are a new sponsor. In the process we will create their sponsored group.

User Account Creation

Group members will be able to submit HiPerGator account requests indicating their PI as the sponsor. Once approved, their HPG Linux accounts will be created.

Joining a Group

Once their HPG username is created users must submit a request to be added to a sponsor's group. Once the sponsor or an assigned manager replies to the request with approval, the user is added to the requested group. Accounts can only be added to groups with active resource allocations (see below for details).

Request to be added to a group:

  • Include the following in the Summary line: "Add [username] to [groupname] group".
  • Include the reason in the request's description.
  • If possible, add your sponsor's email to the ticket's CC list.

Trial Allocation

We recommend that the group's sponsor request a free trial allocation for storage and computational resources to get the group started on HiPerGator. Group members can then use HiPerGator for the 3 month duration of the trial allocation to figure out what resources and applications they really need.

Purchasing Resources

After or while the group uses a trial allocation to determine the computational and storage resources it needs the group's sponsor can submit a purchase request for hardware (5-years) or services (3-months to longer) to invest into the resources to cover the group's HiPerGator use.

Some groups may have access to shared departmental allocations. In this case, instead of purchasing resources, group members can request to be added to the departmental group to gain access to the shared resources.

Some examples of departments with shared allocations include the Genetics Institute, Emerging Pathogens Institute, Statistics Department, Biostatistics Department, Center for Compressible Multiphase Turbulence (CCMT), Cognitive Aging and Memory Clinical Translational Research Program (CAMCTRP), Center for Molecular Magnetic Quantum Materials, Physics Department, and Plant Pathology Department. In addition, several research groups working on collaborative projects have shared allocations accessible to members of those projects.

At this point a group is established on HiPerGator and can continue their computational work. See below for more details on the basic use.

Using HiPerGator

To use HiPerGator or HiPerGator-AI you must have basic understanding the following concepts:

Click on the buttons below to explore.

Interface.png Computation.png Scheduling.png Storage.png

Getting help

If you are having problems using the UFRC system, try our resources at Help or let our staff know by submitting a support request.