This document provides an introduction to heterogeneous computing for high performance computing. It defines heterogeneous computing as using multiple types of processors, such as CPUs and GPUs, within the same HPC system. The document discusses how HPC applications require large amounts of floating-point calculations that can benefit from hardware accelerators designed for parallel workloads. It provides examples of hardware accelerators like the Intel x87 coprocessor and modern GPUs.