Skip to content

Commit 85ce7a5

Browse files
Ocloc: setup hw info values from default config
Related-To: NEO-5287 Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
1 parent ba51cf5 commit 85ce7a5

File tree

2 files changed

+29
-1
lines changed

2 files changed

+29
-1
lines changed

opencl/test/unit_test/offline_compiler/offline_compiler_tests.cpp

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1260,6 +1260,32 @@ TEST(OfflineCompilerTest, givenNoRevisionIdWhenCompilerIsInitializedThenHwInfoHa
12601260
EXPECT_EQ(mockOfflineCompiler->hwInfo.platform.usRevId, revId);
12611261
}
12621262

1263+
TEST(OfflineCompilerTest, whenDeviceIsSpecifiedThenDefaultConfigFromTheDeviceIsUsed) {
1264+
auto mockOfflineCompiler = std::unique_ptr<MockOfflineCompiler>(new MockOfflineCompiler());
1265+
ASSERT_NE(nullptr, mockOfflineCompiler);
1266+
1267+
std::vector<std::string> argv = {
1268+
"ocloc",
1269+
"-q",
1270+
"-file",
1271+
"test_files/copybuffer.cl",
1272+
"-device",
1273+
gEnvironment->devicePrefix.c_str()};
1274+
1275+
int retVal = mockOfflineCompiler->initialize(argv.size(), argv);
1276+
EXPECT_EQ(SUCCESS, retVal);
1277+
1278+
auto actualHwInfo = mockOfflineCompiler->hwInfo;
1279+
auto expectedHwInfo = actualHwInfo;
1280+
auto hwInfoConfig = defaultHardwareInfoConfigTable[expectedHwInfo.platform.eProductFamily];
1281+
1282+
setHwInfoValuesFromConfig(hwInfoConfig, expectedHwInfo);
1283+
1284+
EXPECT_EQ(actualHwInfo.gtSystemInfo.SliceCount, expectedHwInfo.gtSystemInfo.SliceCount);
1285+
EXPECT_EQ(actualHwInfo.gtSystemInfo.SubSliceCount, expectedHwInfo.gtSystemInfo.SubSliceCount);
1286+
EXPECT_EQ(actualHwInfo.gtSystemInfo.EUCount, expectedHwInfo.gtSystemInfo.EUCount);
1287+
}
1288+
12631289
struct WorkaroundApplicableForDevice {
12641290
const char *deviceName;
12651291
bool applicable;

shared/offline_compiler/source/offline_compiler.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,9 @@ int OfflineCompiler::getHardwareInfo(const char *pDeviceName) {
274274
if (revisionId != -1) {
275275
hwInfo.platform.usRevId = revisionId;
276276
}
277-
hardwareInfoSetup[hwInfo.platform.eProductFamily](&hwInfo, true, 0x0);
277+
auto hwInfoConfig = defaultHardwareInfoConfigTable[hwInfo.platform.eProductFamily];
278+
setHwInfoValuesFromConfig(hwInfoConfig, hwInfo);
279+
hardwareInfoSetup[hwInfo.platform.eProductFamily](&hwInfo, true, hwInfoConfig);
278280
familyNameWithType.clear();
279281
familyNameWithType.append(familyName[hwInfo.platform.eRenderCoreFamily]);
280282
familyNameWithType.append(hwInfo.capabilityTable.platformType);

0 commit comments

Comments
 (0)