For two decades the word "supercomputer" meant one thing: a Cray. Then commodity microprocessors caught up on price/performance, the killer micros arrived, and the custom vector machine died. This is how vector processing worked, why it lost, and what crawled out of the wreckage to become modern HPC.
Parallel-Computing
-
The Cray Era and the Death of the Supercomputer -
Why GPUs Beat CPUs at Matrix Math A GPU does not win at matrix multiplication because its cores are faster than a CPU's. They are slower, dumber, and clocked lower. It wins because it has thousands of them, schedules them in warps, and hides memory latency by oversubscribing the machine so aggressively that there is always work to run. Here is how SIMT, occupancy, coalescing, and tensor cores actually work.
-
MPI Programming Essentials: Collectives, Non-Blocking, and the Traps Nobody Warns You About A working engineer's guide to MPI: the mental model, point-to-point and collective communication, non-blocking patterns, derived datatypes, one-sided RMA, threading levels, MPI-IO, performance traps, and integration with SLURM.
-
OpenMP: Threading Without Pthreads (And Without the Nightmares) OpenMP as the sane way to parallelize C, C++, and Fortran — pragmas instead of pthread plumbing for parallel loops, tasks, and GPU offload — plus the data-sharing and scheduling details that decide whether you get speedup or bugs.
-
Bend: Automatic Parallelism via Interaction Combinators Bend is a Python-like language that automatically parallelizes on CPU and GPU without threads or locks, powered by the HVM2 interaction combinator runtime. Here's what the novel ideas actually are, what works today, and what's still research-grade.