Cheaha Quick Start (Deprecated)

From Cheaha
Jump to navigation Jump to search


Attention: Research Computing Documentation has Moved
https://docs.rc.uab.edu/


Please use the new documentation url https://docs.rc.uab.edu/ for all Research Computing documentation needs.


As a result of this move, we have deprecated use of this wiki for documentation. We are providing read-only access to the content to facilitate migration of bookmarks and to serve as an historical record. All content updates should be made at the new documentation site. The original wiki will not receive further updates.

Thank you,

The Research Computing Team

NOTE: This page is still under development. Please refer to Cheaha_GettingStarted page for detailed documentation.

Cheaha is a shared cluster computing environment for UAB researchers. Cheaha offers total 8.75 TFLOPS compute power, 200 TB high-performance storage and 2.8 TB memory. See Cheaha_Quick_Start_Hardware for more details on compute platform, but first let's get started with an example and see how easy it is to use.

If you have any questions about Cheaha usage then please contact Research Computing team at support@listserv.uab.edu .

Logging In

More detailed login instructions are also available.

Most users will authenticate to Cheaha using their BlazerID and associated password using an SSH (Secure Shell) client. The basic syntax is as follows:

ssh BLAZERID@cheaha.uabgrid.uab.edu

Hello Cheaha!

A shared cluster environment like Cheaha uses a job scheduler to run tasks on the cluster to provide optimal resource sharing among users. Cheaha uses a job scheduling system call SGE to schedule and manage jobs. A user needs to tell SGE about resource requirements (e.g. CPU, memory) so that it can schedule jobs effectively. These resource requirements along with actual application code can be specified in a single file commonly referred as 'Job Script/File'. Following is a simple job script that prints job number and hostname.

#!/bin/bash
#
# Define the shell used by your compute job
#$ -S /bin/bash
#
# Run in the current directory from where you submit the job
#$ -cwd
#
# Set the maximum runtime for the job (ex: 10 minutes)
#$ -l h_rt=00:10:00
# Set the maximum amount of RAM needed per slot (ex: 512 MB's)
#$ -l vf=512M
#
# Your email address
#$ -M YOUR_EMAIL_ADDRESS
#
# Notification Options:
#  b     Mail is sent at the beginning of the job
#  e     Mail is sent at the end of the job
#  a     Mail is sent when the job is aborted or rescheduled
#  s     Mail is sent when the job is suspended
#  n     No mail is sent
#$ -m eas
#
# Use the environment from your current shell
#
#$ -V

echo "The job $JOB_ID is running on $HOSTNAME"

Lines starting with '#$' have a special meaning in the SGE world. SGE specific configuration options are specified after the '#$' characters. Above configuration options are useful for most job scripts and for additional configuration options refer to SGE commands manual. A job script is submitted to the cluster using SGE specific commands. There are many commands available, but following three commands are the most common:

  • qsub - to submit job
  • qdel - to delete job
  • qstat - to view job status

We can submit above job script using qsub command:

$ qsub HelloCheaha.sh
Your job 9043385 (HelloCheaha.sh) has been submitted

When the job script is submitted, SGE queues it up and assigns it a job number (e.g. 9043385 in above example). The job number is available inside job script using environment variable $JOB_ID. This variable can be used inside job script to create job related directory structure or file names. Cheaha_Quick_Start_Job_Script_Examples provides more job script examples and Cheaha_Quick_Start_SGE_Commands provides more information about SGE commands.

Software

Cheaha's software stack includes many scientific computing softwares. Below is list of popular softwares available on Cheaha:

These softwares can be included in a job environment using environment modules. Environment modules make environment variables modification easy and repeatable. Please refer to Cheaha_Quick_Start_Softwares page for more details.

Storage

A non-trivial analysis requires a good storage backend that supports large file staging, access control and performance. Cheaha storage fabric includes a high-performance parallel file system called Lustre which handles large files efficiently. It's available for all Cheaha users and specific details are covered on Cheaha_Quick_Start_Storage page.

Graphical Interface

Some applications use graphical interface to perform certain actions (e.g. submit buttons, file selections etc.). Cheaha supports graphical applications using an interactive X-Windows session with SGE's qrsh command. This will allow you to run graphical applications like MATLAB or AFNI on Cheaha. Refer to Cheaha_Quick_Start_Interactive_Jobs for details on running graphical X-Windows applications.

Scheduling Policies

Support

If you have any questions about our documentation or need any help with Cheaha then please contact us on support@listserv.uab.edu . Cheaha is maintained by UAB IT's Research Computing team.