P4 to Git Change 1313121 by lmoriche@lmoriche_opencl_dev on 2016/09/11 15:21:47
SWDEV-94611 - [OCL-LC-ROCm] Use GFX IP for device name. Set the name to "gfx[M][m][s]" (M:major,m:minor,stepping). Removed the device name strings from the DeviceInfo table. Keep the machineTarget_ field until the compiler is changed to accept gfxip strings. Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdefs.hpp#6 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#15 edit
This commit is contained in:
@@ -34,15 +34,15 @@ const HsaDeviceId HSA_INVALID_DEVICE_ID = -1;
|
||||
|
||||
static const AMDDeviceInfo DeviceInfo[] = {
|
||||
// targetName machineTarget
|
||||
/* TARGET_KAVERI_SPECTRE */ {HSA_SPECTRE_ID, "Spectre", "kaveri", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET_KAVERI_SPOOKY */ {HSA_SPOOKY_ID, "Spooky", "kaveri", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET_TONGA */ {HSA_TONGA_ID, "Tonga", "tonga", 4, 16, 1, 256, 64 * Ki, 32, 0, 0},
|
||||
/* TARGET_CARRIZO */ {HSA_CARRIZO_ID, "Carrizo", "carrizo", 4, 16, 1, 256, 64 * Ki, 32, 0, 0},
|
||||
/* TARGET_ICELAND */ {HSA_ICELAND_ID, "Topaz", "iceland", 4, 16, 1, 256, 64 * Ki, 32, 0, 0},
|
||||
/* TARGET_FIJI */ {HSA_FIJI_ID, "Fiji", "fiji", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET HAWAII */ {HSA_HAWAII_ID, "Hawaii", "hawaii", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET ELLESMERE */ {HSA_ELLESMERE_ID, "Ellesmere", "polaris10", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET BAFFIN */ {HSA_BAFFIN_ID, "Baffin", "polaris11", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 }
|
||||
/* TARGET_KAVERI_SPECTRE */ {HSA_SPECTRE_ID, "", "kaveri", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET_KAVERI_SPOOKY */ {HSA_SPOOKY_ID, "", "kaveri", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET_TONGA */ {HSA_TONGA_ID, "", "tonga", 4, 16, 1, 256, 64 * Ki, 32, 0, 0},
|
||||
/* TARGET_CARRIZO */ {HSA_CARRIZO_ID, "", "carrizo", 4, 16, 1, 256, 64 * Ki, 32, 0, 0},
|
||||
/* TARGET_ICELAND */ {HSA_ICELAND_ID, "", "iceland", 4, 16, 1, 256, 64 * Ki, 32, 0, 0},
|
||||
/* TARGET_FIJI */ {HSA_FIJI_ID, "", "fiji", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET HAWAII */ {HSA_HAWAII_ID, "", "hawaii", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET ELLESMERE */ {HSA_ELLESMERE_ID, "", "polaris10", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 },
|
||||
/* TARGET BAFFIN */ {HSA_BAFFIN_ID, "", "polaris11", 4, 16, 1, 256, 64 * Ki, 32, 0, 0 }
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -377,13 +377,13 @@ hsa_status_t Device::iterateAgentCallback(hsa_agent_t agent, void *data) {
|
||||
}
|
||||
|
||||
uint32_t isaNameLength = 0;
|
||||
if (hsa_isa_get_info(isa, HSA_ISA_INFO_NAME_LENGTH, 0, &isaNameLength)
|
||||
if (hsa_isa_get_info_alt(isa, HSA_ISA_INFO_NAME_LENGTH, &isaNameLength)
|
||||
!= HSA_STATUS_SUCCESS) {
|
||||
return HSA_STATUS_ERROR;
|
||||
}
|
||||
|
||||
char *isaName = (char*)alloca((size_t)isaNameLength + 1);
|
||||
if (hsa_isa_get_info(isa, HSA_ISA_INFO_NAME, 0, isaName)
|
||||
if (hsa_isa_get_info_alt(isa, HSA_ISA_INFO_NAME, isaName)
|
||||
!= HSA_STATUS_SUCCESS) {
|
||||
return HSA_STATUS_ERROR;
|
||||
}
|
||||
@@ -615,7 +615,13 @@ Device::populateOCLDeviceConstants()
|
||||
|
||||
roc::Settings* hsa_settings = static_cast<roc::Settings*>(settings_);
|
||||
|
||||
strcpy(info_.name_, "AMD HSA Device");
|
||||
int gfxipMajor = deviceInfo_.gfxipVersion_ / 100;
|
||||
int gfxipMinor = deviceInfo_.gfxipVersion_ / 10 % 10;
|
||||
int gfxipStepping = deviceInfo_.gfxipVersion_ % 10;
|
||||
|
||||
std::ostringstream oss;
|
||||
oss << "gfx" << gfxipMajor << gfxipMinor << gfxipStepping;
|
||||
::strcpy(info_.name_, oss.str().c_str());
|
||||
|
||||
char device_name[64] = { 0 };
|
||||
if (HSA_STATUS_SUCCESS !=
|
||||
@@ -623,8 +629,7 @@ Device::populateOCLDeviceConstants()
|
||||
_bkendDevice, HSA_AGENT_INFO_NAME, device_name)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
strcpy(info_.boardName_, device_name);
|
||||
::strcpy(info_.boardName_, device_name);
|
||||
|
||||
if (HSA_STATUS_SUCCESS != hsa_agent_get_info(_bkendDevice,
|
||||
HSA_AGENT_INFO_PROFILE,
|
||||
@@ -826,7 +831,7 @@ Device::populateOCLDeviceConstants()
|
||||
return false;
|
||||
}
|
||||
std::stringstream ss;
|
||||
ss << major << "." << minor << " (hsa)";
|
||||
ss << major << "." << minor << " (HSA)";
|
||||
strcpy(info_.driverVersion_, ss.str().c_str());
|
||||
info_.version_ = "OpenCL " /*OPENCL_VERSION_STR*/"1.2" " ";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user