GPU – Graphics Processing Unit
CPU – Central Processing Unit
Computer scientists are now converting many parallel applications to run hundreds of times faster on the GPU, you cannot blame them, these gaming consoles have great video cards and relatively stable software platforms that helps us to relax in our various living rooms and provide us with a virtual feeling about shooting bad guys, driving a sports car, throwing a football or sometimes feeling the snow dropping on our body like we are actively present in the game screen scene.
GPUs can also enable better physics simulation in video games using PhysX, accelerate video encoding and decoding, and perform other compute-intensive tasks.
GPUs were initially used for rendering graphics only; as technology advanced, the large number of cores in GPUs relative to CPUs was exploited by developing computational capabilities for GPUs so that they can process many parallel streams of data simultaneously, no matter what that data might be.
A GPU can handle large amounts of data in many streams, performing relatively simple operations on them. It is capable of performing vector operations and floating-point arithmetic, with the latest cards capable of manipulating double-precision floating-point numbers. Frameworks such as CUDA and OpenCL enable programs to be written for GPUs, and the nature of GPUs make them most suited to highly parallelizable operations, such as in scientific computing, where a series of specialized GPU compute cards can be a viable replacement for a small compute cluster as in NVIDIA Tesla Personal Supercomputers.
The serial processing character of the CPU constrains it from performing multiple simultaneous operations on data. The move toward multicore helps enable more parallelism than a single CPU core, but it still falls short of the “many-core” architecture of GPUs. Thus, a heterogeneous architecture in which the CPU delegates certain operations to GPUs can accelerate some applications many times over. Such applications include graphics-intensive tasks, physics modeling and jobs involving large amounts of data that can be processed in parallel. Although GPUs operate at lower clock rates that CPUs, their much more numerous cores will definitely surpass this deficiency. The GPU has also come to play an important and growing role in supercomputing as a complement to CPUs.
A GPU (Graphics Processing Unit) is a specialized CPU (Central Processing Unit). So essentially, they’re both the same thing and can be interchanged if they have the command sets available. However, GPUs can do the more linear/basic computations of a CPU at the same speed that a current CPU can. So don’t be surprised if in the nearest future CPUs are phased out for GPUs. You heard it here first!