@@ -125,6 +125,26 @@ void ICLLP::setupFeatureAndWorkaroundTable(HardwareInfo *hwInfo) {
125125 workaroundTable->flags .waReportPerfCountUseGlobalContextID = true ;
126126};
127127
128+ void ICLLP::setupHardwareInfoBase (HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
129+ GT_SYSTEM_INFO *gtSysInfo = &hwInfo->gtSystemInfo ;
130+ gtSysInfo->ThreadCount = gtSysInfo->EUCount * ICLLP::threadsPerEu;
131+ gtSysInfo->TotalHsThreads = 224 ;
132+ gtSysInfo->TotalGsThreads = 224 ;
133+ gtSysInfo->TotalVsThreads = 336 ;
134+ gtSysInfo->TotalDsThreads = 336 ;
135+ gtSysInfo->TotalPsThreadsWindowerRange = 128 ;
136+ gtSysInfo->CsrSizeInMb = 5 ;
137+ gtSysInfo->MaxEuPerSubSlice = ICLLP::maxEuPerSubslice;
138+ gtSysInfo->MaxSlicesSupported = ICLLP::maxSlicesSupported;
139+ gtSysInfo->MaxSubSlicesSupported = ICLLP::maxSubslicesSupported;
140+ gtSysInfo->IsL3HashModeEnabled = false ;
141+ gtSysInfo->IsDynamicallyPopulated = false ;
142+
143+ if (setupFeatureTableAndWorkaroundTable) {
144+ setupFeatureAndWorkaroundTable (hwInfo);
145+ }
146+ }
147+
128148const HardwareInfo ICLLP_1x8x8::hwInfo = {
129149 &ICLLP::platform,
130150 &ICLLP::featureTable,
@@ -135,26 +155,16 @@ const HardwareInfo ICLLP_1x8x8::hwInfo = {
135155
136156GT_SYSTEM_INFO ICLLP_1x8x8::gtSystemInfo = {0 };
137157void ICLLP_1x8x8::setupHardwareInfo (HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
158+ ICLLP::setupHardwareInfoBase (hwInfo, setupFeatureTableAndWorkaroundTable);
159+
138160 GT_SYSTEM_INFO *gtSysInfo = &hwInfo->gtSystemInfo ;
139- gtSysInfo->ThreadCount = gtSysInfo->EUCount * ICLLP::threadsPerEu;
140161 gtSysInfo->SliceCount = 1 ;
141162 gtSysInfo->L3CacheSizeInKb = 3072 ;
142163 gtSysInfo->L3BankCount = 8 ;
143164 gtSysInfo->MaxFillRate = 16 ;
144- gtSysInfo->TotalVsThreads = 336 ;
145165 gtSysInfo->TotalHsThreads = 336 ;
146- gtSysInfo->TotalDsThreads = 336 ;
147166 gtSysInfo->TotalGsThreads = 336 ;
148167 gtSysInfo->TotalPsThreadsWindowerRange = 64 ;
149- gtSysInfo->CsrSizeInMb = 5 ;
150- gtSysInfo->MaxEuPerSubSlice = ICLLP::maxEuPerSubslice;
151- gtSysInfo->MaxSlicesSupported = ICLLP::maxSlicesSupported;
152- gtSysInfo->MaxSubSlicesSupported = ICLLP::maxSubslicesSupported;
153- gtSysInfo->IsL3HashModeEnabled = false ;
154- gtSysInfo->IsDynamicallyPopulated = false ;
155- if (setupFeatureTableAndWorkaroundTable) {
156- setupFeatureAndWorkaroundTable (hwInfo);
157- }
158168};
159169
160170const HardwareInfo ICLLP_1x4x8::hwInfo = {
@@ -167,27 +177,15 @@ const HardwareInfo ICLLP_1x4x8::hwInfo = {
167177
168178GT_SYSTEM_INFO ICLLP_1x4x8::gtSystemInfo = {0 };
169179void ICLLP_1x4x8::setupHardwareInfo (HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
180+ ICLLP::setupHardwareInfoBase (hwInfo, setupFeatureTableAndWorkaroundTable);
181+
170182 GT_SYSTEM_INFO *gtSysInfo = &hwInfo->gtSystemInfo ;
171- gtSysInfo->ThreadCount = gtSysInfo->EUCount * ICLLP::threadsPerEu;
172183 gtSysInfo->SliceCount = 1 ;
173184 gtSysInfo->L3CacheSizeInKb = 2304 ;
174185 gtSysInfo->L3BankCount = 6 ;
175186 gtSysInfo->MaxFillRate = 8 ;
176- gtSysInfo->TotalVsThreads = 364 ;
177- gtSysInfo->TotalHsThreads = 224 ;
178- gtSysInfo->TotalDsThreads = 364 ;
179- gtSysInfo->TotalGsThreads = 224 ;
180- gtSysInfo->TotalPsThreadsWindowerRange = 128 ;
181- gtSysInfo->CsrSizeInMb = 5 ;
182- gtSysInfo->MaxEuPerSubSlice = ICLLP::maxEuPerSubslice;
183- gtSysInfo->MaxSlicesSupported = ICLLP::maxSlicesSupported;
184- gtSysInfo->MaxSubSlicesSupported = ICLLP::maxSubslicesSupported;
185- gtSysInfo->IsL3HashModeEnabled = false ;
186- gtSysInfo->IsDynamicallyPopulated = false ;
187- if (setupFeatureTableAndWorkaroundTable) {
188- setupFeatureAndWorkaroundTable (hwInfo);
189- }
190187};
188+
191189const HardwareInfo ICLLP_1x6x8::hwInfo = {
192190 &ICLLP::platform,
193191 &ICLLP::featureTable,
@@ -198,26 +196,13 @@ const HardwareInfo ICLLP_1x6x8::hwInfo = {
198196
199197GT_SYSTEM_INFO ICLLP_1x6x8::gtSystemInfo = {0 };
200198void ICLLP_1x6x8::setupHardwareInfo (HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
199+ ICLLP::setupHardwareInfoBase (hwInfo, setupFeatureTableAndWorkaroundTable);
200+
201201 GT_SYSTEM_INFO *gtSysInfo = &hwInfo->gtSystemInfo ;
202- gtSysInfo->ThreadCount = gtSysInfo->EUCount * ICLLP::threadsPerEu;
203202 gtSysInfo->SliceCount = 1 ;
204203 gtSysInfo->L3CacheSizeInKb = 2304 ;
205204 gtSysInfo->L3BankCount = 6 ;
206205 gtSysInfo->MaxFillRate = 8 ;
207- gtSysInfo->TotalVsThreads = 364 ;
208- gtSysInfo->TotalHsThreads = 224 ;
209- gtSysInfo->TotalDsThreads = 364 ;
210- gtSysInfo->TotalGsThreads = 224 ;
211- gtSysInfo->TotalPsThreadsWindowerRange = 128 ;
212- gtSysInfo->CsrSizeInMb = 5 ;
213- gtSysInfo->MaxEuPerSubSlice = ICLLP::maxEuPerSubslice;
214- gtSysInfo->MaxSlicesSupported = ICLLP::maxSlicesSupported;
215- gtSysInfo->MaxSubSlicesSupported = ICLLP::maxSubslicesSupported;
216- gtSysInfo->IsL3HashModeEnabled = false ;
217- gtSysInfo->IsDynamicallyPopulated = false ;
218- if (setupFeatureTableAndWorkaroundTable) {
219- setupFeatureAndWorkaroundTable (hwInfo);
220- }
221206};
222207
223208const HardwareInfo ICLLP::hwInfo = ICLLP_1x8x8::hwInfo;
0 commit comments