Parallel computing refers to running multiple computational tasks simultaneously. The idea behind it is based on the assumption that a big computational task can be divided into smaller tasks which can run concurrently.
|Single Instruction||Multiple Instructions||Single Program||Multiple Programs|
Types of parallel computing
Parallel computing is used only for the last row of below table;
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:
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.
Running Graphical Programs
See the Gui Programs page for information on running graphical user interface applications at UFRC.
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.
|ls||List files in the current 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 files on the cluster can be done through a couple of different methods...
- 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.
- 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.
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
#! /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>]
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.
See Scratch for notes on the main high-performance storage.
See Test_Nodes to read about the available interactive servers.