Personal tools

Supercomputer Architectures

FitzRandolph Gate, Princeton University
(FitzRandolph Gate, Princeton University - Kimberly Chen)


- Overview

Supercomputers are extremely powerful computing devices that process data at floating-point operations per second (FLOPS) to perform complex calculations and simulations, often used in research, artificial intelligence (AI), and big data computing. 

Unlike traditional computers, supercomputers use multiple central processing units (CPUs). These CPUs are grouped into compute nodes, which consist of a processor or a group of processors (symmetric multiprocessing (SMP) and a memory block. In terms of scale, supercomputers can contain tens of thousands of nodes. With interconnected communication capabilities, these nodes can collaborate to solve specific problems. Nodes also use interconnects to communicate with I/O systems, such as data storage and networking.

Supercomputing helps to streamline big data analysis in industries where parallel processing of millions of data at once is vital, like finance, scientific research, and medicine. Supercomputers are used for: Weather forecasting, Meteorology, Nuclear energy research, and Assessing developing diseases and anticipating disease behavior and treatment.  

The history of supercomputing goes back to the 1960s when Seymour Cray designed a series of computers at Control Data Corporation (CDC) to use innovative designs and parallelism to achieve superior computational peak performance. The CDC 6600, released in 1964, is generally considered the first supercomputer.

Please refer to the following for more information:

 

- How Do Supercomputers Work?

Supercomputers are high-performance mainframe systems that use multiple central processing units (CPUs) linked into compute nodes to solve problems through parallel processing. Parallel processing is when multiple processors work together at the same time to complete a task. Supercomputers can have thousands of nodes that communicate with each other to solve problems. 

Supercomputers use software to split large tasks into smaller sub-tasks, which are then given to individual cores. For example, a program can be executed with one thread, or with eight threads, which can be almost seven times faster. However, opening and closing parallel regions uses resources, so the program will always be slower than expected. 

Supercomputers are often used for scientific and engineering applications that require resource-intensive calculations, such as handling large databases or performing a lot of computation. For example, supercomputers are used for aerodynamics simulations, fluid dynamics, and particle physics. 

The world's most powerful supercomputers, such as those run by the U.S. Department of Energy, require specialized facilities, called data centers, to meet their space, energy, and cooling requirements.

Another key to a powerful supercomputing system is an incredibly fast network, the communications hub that connects all these tiny computers. So now, instead of working as individual units, they work as a whole to manage millions of tasks to quickly solve complex problems.

 

- How Fast is Supercomputing?

Supercomputing is measured in floating-point operations per second (FLOPS), and petaflops are a measure of a computer's processing speed equal to a thousand trillion flops. And a 1-petaflop computer system can perform one quadrillion (1015) flops. From a different perspective, supercomputers can be one million times more processing power than the fastest laptop.

 

- Supercomputer Types

Supercomputers can be categorized as either general purpose or special purpose. 

General purpose supercomputers can be further classified as: Vector processing supercomputers, Tightly connected cluster computers, and Commodity computers. 

Special purpose supercomputers are built to achieve a specific goal or task. They are intended for a particular function and can't be used for anything else. Supercomputers are used for high-level functions, such as scientific and floating-point computations. They have thousands of processors and are capable of processing trillions of calculations per second. 

Special purpose supercomputers use Application-Specific Integrated Circuits (ASICs) that offer much better performance than general-purpose supercomputers.

Examples of special-purpose supercomputers include:

  • Belle, Deep Blue, and Hydra: Built for playing games like chess
  • Gravity Pipe: For astrophysics
  • MDGRAPE-3: For protein structure

 

Saitama Prefecture_Japan_032221A
[Saitama Prefecture, Japan - Civil Engineering Discoveries]

- Trends in Supercomputing

Supercomputer architecture has changed significantly since the first systems were introduced in the 1960s. Early supercomputers used a small number of processors that accessed shared memory, but the trend moved to massively parallel systems with distributed memory and distributed file systems as demand for computing power increased. Today's supercomputers use over 100,000 processors connected by fast networks.

Supercomputing refers to the processing of massively complex or data-laden problems using the concentrated compute resources of multiple computer systems working in parallel. Supercomputers usually have more than one CPU (central processing unit), which contains circuits for interpreting program instructions and executing arithmetic and logic operations in proper sequence. 

Some trends shaping the future of supercomputing include:

  • A slow shift in supercomputing deployment scheme towards a hybrid deployment model
  • The development of supercomputing as a service
  • An increasing use of AI-powered applications in combination with supercomputing

In the years to come, we can expect to see even more powerful supercomputers that are capable of solving even more complex problems.
 
 

- Supercomputing vs. Parallel Computing

Supercomputers are sometimes called parallel computers because supercomputing can use parallel processing. Parallel processing is when multiple CPUs process a single calculation at a given time. However, high-performance computing (HPC) scenarios also use parallelism without necessarily using supercomputers. 

Another exception is that supercomputers can use other processor systems, such as vector processors, scalar processors, or multi-thread processors. 

 
 

[More to come ...]

 

 

Document Actions