A GPU is a processor with many parallel execution resources, capable of running tens of thousands of hardware threads simultaneously. This makes GPUs well suited to data-parallel workloads that apply similar calculations across different datasets. section 9.1
Unlike concurrency on one CPU core, which interleaves tasks to create an illusion of simultaneous progress, GPU execution provides true parallelism across separate execution units. section 9.1
Figure 9.1 Concurrency versus parallelism. Concurrent execution (on the left) interleaves thread execution on a single core, which provides an illusion of work happening at the same time because all threads make some progress quickly. In contrast, parallel execution (on the right) executes the threads simultaneously on different cores, providing true parallel execution.
Compare interleaved execution on one core with simultaneous execution across separate cores or execution units. section 9.1













