Bowdoin College offers a variety of resources for Linux High Performance Computing (HPC), including desktop machines within the lab environment, office desktop machines, specialized systems such as the Chemistry NMR (Nuclear Magnetic Resonance) spectrometer, interactive multiprocessor computational servers, and a High Performance Computing Grid with multi-node and GPU parallel processing.
What is High Performance Computing?
These videos offer a good sample of what HPC is and why it matters:
A variety of disciplines at Bowdoin are using the Linux HPC environment, including Biology, Chemistry, Computer Science, Digital and Computational Studies, Environmental Studies, Economics, Geology, History, Math, and Physics, as well as individual student and faculty research projects.
A wide varierty of software packages and programming languages are available within the Linux HPC environment, both commercial and Open Source, such as:
There are two different methods for using the Linux HPC resources; interactively, and via a batch scheduler that manages the supercomputing grid.
Interactive Computing is the way that most people use a computer. This is essentially sitting at a single computer, running programs, and interacting with those programs either through a GUI (Graphical User Interface) or command line interface. Checking e-mail, browsing the web, and composing a document are examples of interactive computing. You would use interactive computing if you were running any software that displayed graphics, or required manual interaction with the program while it is running, such as inputting more data, typing additional information, or clicking on an icon. Interactive computing is best used when you are able to accomplish your goals during the time that you will be sitting at the computer, and can quit the program when you leave (ie, you are not leaving the computer running your job when you walk away from it).
The Bowdoin Computing Grid is a group of Linux servers which appear as one big, multiprocessor, compute server that can run many computationally intensive jobs concurrently. The Grid supports a wide range of jobs from simple shell scripts to heavy computational jobs and parallel processes. Jobs taking several days on a typical desktop machine might finish within hours using the Grid environment, thus freeing up the desktop computer for other tasks while the Grid resources process the job on dedicated computational nodes. People interact with the Bowdoin Computing Grid via the Grid Headnode, a dedicated computer that runs the Sun Grid Engine (SGE), which is a software environment that coordinates the resources of multiple computers. SGE accepts jobs, puts them in a holding area (queue) until they can be run, sends them to a computational node, manages them during the run, and notifies the person when they are finished.
Typically if a job takes more than a few hours to run on a desktop machine, or the desktop machine needs to be available for other tasks, you should consider running the job on the Grid.
A computational node within the Grid can range from a 16 CPU core, 128 Gb RAM system, to a 32 CPU core, 256 Gb RAM system. The Grid also offers 6 GPU computational nodes utilizing NVidia GPU cards. Overall, there are approximately 500 CPU cores available for processing.
If you are on campus or are connected to campus network via the VPN and wish to learn more about our Linux environment, please visit our Linux Help Site at http://hpc.bowdoin.edu/.
If you have any questions about the Linux HPC environment at Bowdoin College, please contact:
Dj Merrill, Manager of High Performance Computing