Just what is HPC?
If you are interested in finding out what happens in the High Performance Computing (supercomputing) community, see About HPC. You might also want to take a look at our HPC Glossary.
Getting Started with HPC
If you just received your allocation, take a look at our Quick Start Guide, which contains a lot of useful information about connecting to, and using Kraken. To be able to compute successfully at NICS, it is essential to have a basic working knowledge of Linux/UNIX, as well as a basic understanding of modern high-performance computers. Depending on your project, it may be necessary to have a basic knowledge of other topics as well, such as parallel programming or debugging.
If you are already comfortable with high performance computing, and just need help with a particular piece of software, you may want to look at our Software Page.
If you are not entirely comfortable with these topics yet, that's OK! There are a number of good, free online tutorials that can help you learn enough to get started. Note that the only way to learn these things is to put it into practice, so don't wait until you finish the tutorials start trying it out.
Linux/UNIX
A brief introduction to Linux/Unix, see Teaching Unix. For more advanced topics, The Linux Documentation Project has many guides, such as An Introduction to Linux - A Hands-On Guide for Linux.
Bash
In many circumstances, such as running a parallel program on Kraken, you will need to write scripts (see Example Scripts). Some information on writing scripts can be found in the UNIX tutorial, however, a more comprehensive tutorial can be found at Advanced Bash-Scripting Guide.
Cyberinfrastructure Tutor
Experienced instructors from NCSA, the Ohio Supercomputer Center, Boston University, the University of Kentucky, and Albuquerque High Performance Computing Center at the University of New Mexico have written a number of training courses devoted to a variety of high-performance computing topics. These self-paced courses are available through the distance learning package Cyberinfrastructure Tutor and include:
- Parallel Computing Explained
- Introduction to MPI
- Introduction to OpenMP
- Debugging Serial and Parallel Codes
- Introduction to Multi-core Performance
A complete list of courses is available. You will need to create an account for yourself and register for each course, but there is no charge.
Other Courses
For a good tutorial on how to write and use makefiles, see Make - A Tutorial

