arvin99 wrote:
Thanks for reply, I already clear about the answer from question 2.
But your answer in question number 1 still make me confuse.
So, in GPU and CPU, there is only one program counter.
The differences are:
In CPU the process PC->PC +1 happened in each cycle clocks but in GPU the process PC-> PC +1 happened for each four cycle clocks (since GPU execute on a group of thread (wavefront)).
Am I right??
|
CPU
1. There is one program counter (PC).
2. If the CPU chip has multiple cores/threads, there is 1 PC per thread.
3. PC will advance after the instruction is finished, it can be 1 to 100+ clocks, depends on instruction. **
GPU
1. There is 1 PC per wave, each wave has 64 (usually) threads. There are many waves.
2. Almost all instructions advance the PC every 4 clocks.
3. On a CU, 4 waves execute in parallel, so the average time to execute 1 instruction is 1 clock, not 4.