Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

High Performance Computing (HPC) Architecture

Before logging in, it is critical to understand that a Supercomputer (HPC) is not just a “fast laptop.” It is a fundamentally different architecture designed for parallel tasks.

In this course, we will use Purdue Anvil as our primary resource.

What is an HPC Cluster?

Imagine you need to move a house. You have two options:

  1. Vertical Scaling: Buy a giant, custom-built truck the size of a house. (Expensive, rare).

  2. Horizontal Scaling: Rent 50 standard pickup trucks and coordinate them. (Cost-effective, scalable).

An HPC Cluster is option #2. It is a collection of thousands of individual computers (called Nodes) connected by a high-speed network.

PC vs. HPC Comparison

FeatureYour LaptopHPC Node (Anvil)
CPUIntel i7 / M1 (4-12 Cores)AMD EPYC “Milan” (128 Cores)
RAM16 GB - 32 GB256 GB - 1000 GB
OSWindows / macOSLinux (RHEL/CentOS)
UsageInteractive (Mouse/GUI)Batch (Scripts/Command Line)

The “Secret Sauce”: The Interconnect

Why can’t we just connect 100 laptops with Wi-Fi?

Latency. In a molecular dynamics simulation, atoms on Node 1 interact with atoms on Node 2. They must exchange data every single time step (10-15 seconds). If the network is slow, the CPUs sit idle waiting for data.

Anvil uses NVIDIA HDR InfiniBand.

Storage Architecture: Where do I put my files?

This is the #1 reason new users lose data or crash simulations. HPC storage is divided into tiers with different rules.

Read the official Anvil Storage Guide for exact quotas.

1. Home Directory ($HOME)

2. Scratch Directory ($SCRATCH)

3. Project Directory ($PROJECT)

Access Methods

We don’t sit in front of the supercomputer. We access it remotely using one of three methods:

  1. Open OnDemand (Browser): The easiest way. Provides a graphical interface, file browser, and Jupyter Notebooks directly in Chrome/Firefox.

  2. SSH (Terminal): The “Pro” way. Fast, low bandwidth, text-only.

  3. Virtual Desktop: Streams a Linux desktop to your browser if you need to open GUI apps (like VMD or PyMOL).