P4 to Git Change 1079216 by emankov@em-hsa-amd on 2014/09/22 08:18:24
ECR #333753 - Compiler Lib/RT: Metadata related code refactor, annotation, minor fixes & additional checks
+ refactor if_aclQueryInfo() in order to simplify code and to avoid direct usage of aclMetadata struct members types
+ annotation on why we need to use deserializeCLMetadata on "serialized" (to NULL) pointers
+ erroneously forgotten RT_KERNEL_NAME was added to aclQueryType enum
+ OCLRTGetInfo, CLEnumCheck tests from ocltst oclcomplib was updated to use RT_KERNEL_NAME
+ testing of printf is added to OCLRTGetInfo
+ minor fixes and additional checks
tests: pre check-in, ocltst -m oclcomplib
Reviewers: Artem Tamazov, Brian Sumner, German Andryeyev
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#49 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#12 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#12 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#265 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#36 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/clSourceShaders.h#5 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/oclrtGetInfo.cpp#14 edit
[ROCm/clr commit: d50fa706e3]
Dieser Commit ist enthalten in:
@@ -3612,25 +3612,26 @@ HSAILKernel::init(bool finalize)
|
||||
delete [] aclPrintfList;
|
||||
}
|
||||
|
||||
bool hasKernelEnqueue = false;
|
||||
size_t sizeOfDeviceEnqueue = sizeof(hasKernelEnqueue);
|
||||
aclMetadata md;
|
||||
md.enqueue_kernel = false;
|
||||
size_t sizeOfDeviceEnqueue = sizeof(md.enqueue_kernel);
|
||||
error = aclQueryInfo(dev().hsaCompiler(), prog().binaryElf(),
|
||||
RT_DEVICE_ENQUEUE, openClKernelName.c_str(),
|
||||
&hasKernelEnqueue, &sizeOfDeviceEnqueue);
|
||||
&md.enqueue_kernel, &sizeOfDeviceEnqueue);
|
||||
if (error != ACL_SUCCESS) {
|
||||
return false;
|
||||
}
|
||||
flags_.dynamicParallelism_ = hasKernelEnqueue;
|
||||
flags_.dynamicParallelism_ = md.enqueue_kernel;
|
||||
|
||||
int index = -1;
|
||||
size_t sizeOfIndex = sizeof(index);
|
||||
md.kernel_index = -1;
|
||||
size_t sizeOfIndex = sizeof(md.kernel_index);
|
||||
error = aclQueryInfo(dev().hsaCompiler(), prog().binaryElf(),
|
||||
RT_KERNEL_INDEX, openClKernelName.c_str(),
|
||||
&index, &sizeOfIndex);
|
||||
&md.kernel_index, &sizeOfIndex);
|
||||
if (error != ACL_SUCCESS) {
|
||||
return false;
|
||||
}
|
||||
index_ = static_cast<uint>(index);
|
||||
index_ = md.kernel_index;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren