March 1, 2023
If you’re pricing out a cloud server, you’re probably comparing pricing on a certain number of virtual CPUs, or Central Processing Units, as well as RAM and storage, and perhaps network fees. If you were building a gaming PC, you’d be pricing out all of those items, but you’d also be saving a major chunk of money for a graphics card, or GPU. GPUs are naturally intended to handle the processing of digital graphics in visually intensive tasks like gaming or animation.
With the rise of big data analytics and machine learning, however, GPUs are playing an increasingly important part in high performance computing. Cloud providers have started getting in on the game, enabling GPU-accelerated cloud servers with an eye on big data processing and other intensive applications.
For applications that support GPU acceleration, compute-intensive functions are passed off to the GPU from the CPU. Usually this is only a small piece of the overall code running through the CPU.
Even multi-core CPUs are intended for sequential processing of code. GPUs, on the other hand, operate at lower frequencies but are designed with thousands of cores intended to handle multiple functions at once. This is called “massively parallel” architecture.
For High Performance Computing (HPC) applications, data is translated into a graphical form so the GPU can process it, then returned to the CPU. Before the rise of General-purpose computing on graphics processing units (GPGPU), this would be a one-way process, where GPU-specific processing tasks were handed off by the CPU and then sent directly to the display after processing. GPGPU requires the use of coding languages that support running CPU code as a GPU shader, like OpenCL or Nvidia CUDA.
GPUs have been used for general-purpose computing tasks in applications like load-balancing clusters, physics engines, statistical physics, bioinformatics, audio signal processing, digital image and video processing, weather forecasting, climate research, financial analysis, medical imaging, databases, cryptography, cryptocurrency, antivirus, and intrusion detection.