Comparing CPUs and GPUs
Now that we know a little more about how GPUs are organized, we can compare them with CPUs to understand the impact of using these devices.Modern CPUs are typically composed of many cores, so they're capable of executing parallel applications by using threads. But while they’re capable of handling tens of threads, a simple GPU can handle thousands of threads.As mentioned previously, the fact that GPU cores execute the same instruction on many pieces of data is an interesting difference from CPU cores. On a CPU, each core is a complete processor that can execute either different applications or different threads of the same parallel application. This means that branch execution on a CPU core doesn't affect the performance of other CPU core executions.Another important distinction is that CPUs can switch between tasks quickly, while GPU cores are controlled by their stream multiprocessor.Regarding memory management, most of the time...