AnsweredAssumed Answered

Number of active work_groups during the execution

Question asked by jpola on Jan 27, 2015
Latest reply on Jan 28, 2015 by jpola

Dear all,

 

I'm wondering about the number of active work_groups during the kernel execution on GPU. Let's assume that my GPU have 20 compute units. On this GPU I'm executing a kernel for which the work-group size is (256, 1, 1). The global-work-size is 20*work-group size.

Now at certain time what is the number of active work_groups beeing executed on a GPU? I'm just trying to understand the following statement from the http://developer.amd.com/tools-and-sdks/archive/amd-app-profiler/user-guide/app-profiler-kernel-occupancy/

Otherwise, if there is more than one wavefront (WF) per work-group (WG), there is an upper limit of 16 work-groups (WG) per compute unit (CU). Then, the maximum number of wavefronts on the compute unit is given by:

In my case I have 4 wavefronts in each work-group.

 

My questions are following:

1. What exactly mean active wavefront? There can be up to 40 wavefronts per CU. Is it mean that at certain time my GPU can process 40 * 20 * 64 = 51200 work-items? I think the number is too big.

2. Can I say that work-group is scheduled to be executed on CU. Which means that my 20 CU will execute one work-group?

3. If each work-group is executed on separate CU, as I think, can I say that this is the number of active work-groups during the execution?

 

Thank you very much for your help,

Kuba.

Outcomes