The basic idea:
CPUs and GPUs are quite similar. They both process thousands of operations per second and have a noticeable impact on the computers performance. So what is the difference between them?
Is the central processing unit of a computer and is often referred to as the brain of the computer. It commonly has anywhere from 1 to 32 cores with a large cache that runs at a high clock speed and is capable of handling a wide variety of tasks that the computer throws at it very quickly. It can often have a graphics chip integrated right on, allowing it to also handle light graphical tasks. Some CPU intensive tasks are compiling programs, data mining, financial/scientific modeling, and video encoding.
Is the graphical processing unit and is generally a supporting unit for the CPU and is optimized for handling image processing. It commonly has thousands of cores but very little cache and generally runs at a lower clock speed as compared to a CPU. Thanks to the really high core count, the GPU is really good at running thousands of small, simple, tiny equations, which is exactly what is needed in graphics. GPUs are built on a Single Instruction Multiple Data (SIMD) architecture which is when a given set of data has the same sequence of operations to be performed. This type of data can be processed all together as a stream of data. Some GPU intensive tasks are 4K/8K video, using multiple high resolution monitors and 3D rendering.
In the end you need both devices along with correct firmware working as one to have a properly functioning system.