File tree Expand file tree Collapse file tree 2 files changed +8
-5
lines changed Expand file tree Collapse file tree 2 files changed +8
-5
lines changed Original file line number Diff line number Diff line change @@ -391,6 +391,11 @@ namespace IGC
391
391
return m_platformInfo.eRenderCoreFamily >= IGFX_GEN11_CORE && IGC_IS_FLAG_ENABLED (EnableIntegerMad);
392
392
}
393
393
394
+ unsigned int getMaxNumberHWThreadForEachWG () const
395
+ {
396
+ return getMaxNumberThreadPerSubslice ();
397
+ }
398
+
394
399
// ***** Below go accessor methods for testing WA data from WA_TABLE *****
395
400
396
401
bool WaDoNotPushConstantsForAllPulledGSTopologies () const
Original file line number Diff line number Diff line change @@ -370,11 +370,10 @@ namespace IGC
370
370
371
371
inline unsigned GetHwThreadsPerWG (const IGC::CPlatform& platform)
372
372
{
373
- unsigned hwThreadPerWorkgroup = platform.getMaxNumberThreadPerSubslice ();
374
-
373
+ unsigned hwThreadPerWorkgroup = platform.getMaxNumberHWThreadForEachWG ();
375
374
if (platform.supportPooledEU ())
376
375
{
377
- hwThreadPerWorkgroup = platform.getMaxNumberThreadPerWorkgroupPooledMax ();
376
+ hwThreadPerWorkgroup = std::min ( platform.getMaxNumberThreadPerWorkgroupPooledMax (), ( unsigned ) 64 );
378
377
}
379
378
return hwThreadPerWorkgroup;
380
379
}
@@ -385,8 +384,7 @@ namespace IGC
385
384
{
386
385
hwThreadPerWorkgroup = 42 ; // On GT1 HW, there are 7 threads/EU and 6 EU/subslice, 42 is the minimum threads/workgroup any HW can support
387
386
}
388
- if ((threadGroupSize <= hwThreadPerWorkgroup * 8 ) &&
389
- threadGroupSize <= 512 )
387
+ if (threadGroupSize <= hwThreadPerWorkgroup * 8 )
390
388
{
391
389
return SIMDMode::SIMD8;
392
390
}
You can’t perform that action at this time.
0 commit comments