High-Performance Computing (HPC) refers to systems with the ability to process data and perform calculations at high speeds, such as supercomputers and computer clusters. While HPC is a field that can use multiple processes for complex and large calculations, this most commonly occurs using supercomputers, and the terms (HPC and supercomputing) are often used interchangeably.
With HPC, enterprises can run large analytical computations, such as millions of scenarios that use up to terabytes (TBs) of data. Examples include:
- scenario planning that requires large analytical computations (eg. weather forecasting or risk management assessments)
- running design simulations before physically building items (eg. chips or cars)
HPC has also become linked with AI applications and the high compute power they require.
Supercomputers are made up of interconnects, I/O systems, memory, and processor cores. Unlike traditional computers, supercomputers use more than one central processing unit (CPU). These CPUs are grouped into compute nodes, comprising a processor or a group of processors for symmetric multiprocessing (SMP), and a memory block. At scale, supercomputers can contain tens of thousands of nodes. Using interconnect communication capabilities, these nodes can collaborate on solving a specific problem. Nodes also use interconnects to communicate with I/O systems, like data storage and networking.
Sometimes supercomputers are referred to as parallel computers because supercomputing can use parallel processing. Parallel processing is the use of multiple CPUs to solve a single calculation at a given time. However, other HPC scenarios use parallelism, too, without using a supercomputer necessarily. Supercomputers can also use other processor systems, such as vector processors, scalar processors, or multithreaded processors.
Due to the power consumption requirements of modern supercomputers, data centers require cooling systems and suitable facilities to house them.
Many scientific research firms, engineering companies, and other large enterprises with significant processing power requirements have moved from using supercomputers to cloud computing.
Supercomputing speed is measured in floating-point operations per second (FLOPS). A petaflop is a computer processing speed equal to a thousand trillion flops, with a 1-petaflop system having the ability to perform one quadrillion (1015) flops. From a different perspective, supercomputers can have one million times more processing power than the fastest laptop.
- Parallel computing - involves hundreds of processors with each process running simultaneously.
- Cluster computing - a type of parallel HPC system that consists of a collection of computers working together as a single integrated resource. Cluster computing includes scheduler, compute, and storage capabilities.
- Grid and distributed computing - connects the processing power of a network containing multiple computers. The network may be a grid in a single location or distributed across separate locations.
Many scientific research firms, engineering companies, and other large enterprises with significant processing power requirements have moved from using on-location supercomputers to HPC services over the cloud.
Cloud-based HPC solutions offer wider access to organizations with only a high-speed internet connection required. Benefits include:
- Services can be scaled to match needs.
- HPC use without requiring the underlying costs and maintenance.
- Enterprises gain a competitive advantage by accessing compute power to meet their capacity.
HPC is used in a range of industries, such as:
- Automotive and aerospace
- Financial services
- Electronics design automation (EDA)
- Film, media, and gaming
- Government and defense
- Life sciences
- Oil and gas