SWDEV-377423 - Fix kernel attribute missing
Fix missing issue of kernel attributes including vec_type_hint, work_group_size_hint and reqd_work_group_size. Make WorkGroupInfo's meta attributes initialized before other parameters are initialized. This way workGroupInfo_'s compileSizeHint_, compileSize_ and compileVecTypeHint_ will be valid when they are used to create kernel signature in Kernel::createSignature(). Fix a typo of ".workgorup_size_hint". Change-Id: I4a1ede2210a25596ad7a935cd4debb896e0147f8
Этот коммит содержится в:
@@ -1095,8 +1095,6 @@ bool Kernel::GetAttrCodePropMetadata() {
|
||||
return false;
|
||||
}
|
||||
|
||||
InitParameters(kernelMetaNode);
|
||||
|
||||
// Set the workgroup information for the kernel
|
||||
workGroupInfo_.availableLDSSize_ = device().info().localMemSizePerCU_;
|
||||
workGroupInfo_.availableSGPRs_ = 104;
|
||||
@@ -1144,12 +1142,13 @@ bool Kernel::GetAttrCodePropMetadata() {
|
||||
static_cast<void*>(this));
|
||||
}
|
||||
|
||||
|
||||
if (status != AMD_COMGR_STATUS_SUCCESS) {
|
||||
LogError("Comgr Api failed with Status: \n");
|
||||
return false;
|
||||
}
|
||||
|
||||
InitParameters(kernelMetaNode);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -315,7 +315,7 @@ static const std::map<std::string,KernelField> KernelFieldMapV3 =
|
||||
{
|
||||
{".symbol", KernelField::SymbolName},
|
||||
{".reqd_workgroup_size", KernelField::ReqdWorkGroupSize},
|
||||
{".workgorup_size_hint", KernelField::WorkGroupSizeHint},
|
||||
{".workgroup_size_hint", KernelField::WorkGroupSizeHint},
|
||||
{".vec_type_hint", KernelField::VecTypeHint},
|
||||
{".device_enqueue_symbol", KernelField::DeviceEnqueueSymbol},
|
||||
{".kernarg_segment_size", KernelField::KernargSegmentSize},
|
||||
|
||||
Ссылка в новой задаче
Block a user