Getting Started
Getting an account
To get an account at the UF Research Computing, you need to read [1] and then put a request in at our request page. That page is located here.
Login
NOTE: If you are using UF's Visitor Wireless, you will not be able to login to our systems using SSH. You will need to arrange for access using some other network.
Linux / Unix
Open a terminal and run
ssh <YOUR_USERNAME>@gator.hpc.ufl.edu
where <YOUR_USERNAME>
is your Research Computing username, which was sent to you when you got your Research Computing account.
The command ssh <YOUR_USERNAME>@gator.hpc.ufl.edu
is what you would type in at a command prompt on your system. After this, it asks you for a password, which you type in. After that, you are logged in and ready to work. As a concrete example, if your Research Computing username is "smith", you would use the command ssh smith@gator.hpc.ufl.edu
to log into the Research Computing.
Windows
Microsoft Windows does not come with a built-in SSH client. You have to download a client from the web. We recommend the following software:
- SSH client - Putty
- Graphical file transfer clients:
MacOS
For MacOS users, the connection instructions are very similar to those for Linux/Unix users.
Terminal, the terminal emulation application under MacOS is located in Applications/Utilities.
Both FileZilla and Cyberduck are available for MacOS if you prefer a graphical interface for transferring files.
Running Graphical Programs
See the Gui Programs page for information on running graphical user interface applications at UFRC.
Getting Help
If you are having problems connecting to the UFRC system, please let the UFRC Staff know by submitting a Support Request.
Interactive work under Linux
Once you are logged in to a Research Computing server, you will find yourself at a Linux command line prompt. That may be daunting at first. However, you only need to know a small subset of Linux commands to accomplish most tasks. There are many Linux "Getting Started" guides online and in print. Below are just a few possibilities. Many more are easily found via a Google search.
A Few Basic Commands
While it is advantageous to have a working knowledge of the most common Linux commands, it is not a requirement. For the uninitiated, the following information may be useful as well as a good "Introduction to Using Linux" book.
Command | Description |
---|---|
ls | List files in the current directory |
cd | Change directory |
more | View a file's contents |
mkdir <dir> | Create a directory |
cp file1 file2 | Copy a file |
mv file1 file2 | Move (i.e. rename) a file |
rm file | Delete a file |
rmdir dir | Delete an empty directory |
Editing
Editing files on the cluster can be done through a couple of different methods...
Native Editors
- vi - The visual editor (vi) is the traditonal Unix editor. However, it is not necessarily the most intuitive editor. That being the case, if you are unfamiliar with it, the following tutorial may be useful.
- VI Tutorial
- Another resource for vi is right here on our wiki.
- There is also a vi tutorial, vimtutor. Once logged in, simply type "
vimtutor
" at the command line to start the tutorial.
- emacs - Emacs is a much heavier duty editor, but again has the problem of having commands that are non-intuitive. Again, we have provided a link to a tutorial for this editor.
- 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 editor on your local machine and then transfer the files over to the Research Computing afterwards. One caveat to this is that with 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 dos2unix
that you can use to convert the text file from DOS/Windows formatting to Linux formatting.
Using Installed Software
We use Environment Modules to provide access to the installed software. See Basic usage of environment modules for information on loading software.
Running Jobs
Trivial Example
#! /bin/sh #PBS -N testjob #PBS -o testjob.out #PBS -e testjob.err #PBS -M <INSERT EMAIL HERE> #PBS -r n #PBS -l walltime=00:01:00 #PBS -l nodes=1:ppn=1 #PBS -l pmem=100mb date hostname module load python python -V |
To submit this job from gator.hpc.ufl.edu, you would use the following command: $ qsub <your job script> To check the status of running jobs, you would use the following command: $ qstat [-u <username>] |
DRMAA
It's possible to submit jobs by using the scheduler API via the DRMAA library. A python example that uses our installed Python DRMAA library can be found in Example_pbs-drmaa_python_script.
Notes on Batch Scripts
- The script can handle only one set of directives. Do not submit a script that has more than one set of directives included in it.
- For more info on advanced directives see PBS_Directives.
- Please see our annotated submission script.
Scratch Storage
See Scratch for notes on the main high-performance storage.
Developmental Nodes
See Test_Nodes to read about the available interactive servers.