mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-21 01:04:57 +08:00
Check IndirectStatelessCount from igc
If kernel has no stateless indirect accesses don't set the kernelHasIndirectAccess flag. Don't make resident or migrate if kernel has no indirect accesses. Changed initial values in KernelAttributes. Related-To: NEO-6597 Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
ddf50cfe15
commit
5e62df4f8e
@@ -259,7 +259,8 @@ cl_int Kernel::initialize() {
|
||||
|
||||
this->kernelHasIndirectAccess |= kernelInfo.kernelDescriptor.kernelAttributes.hasNonKernelArgLoad ||
|
||||
kernelInfo.kernelDescriptor.kernelAttributes.hasNonKernelArgStore ||
|
||||
kernelInfo.kernelDescriptor.kernelAttributes.hasNonKernelArgAtomic;
|
||||
kernelInfo.kernelDescriptor.kernelAttributes.hasNonKernelArgAtomic ||
|
||||
kernelInfo.hasIndirectStatelessAccess;
|
||||
|
||||
provideInitializationHints();
|
||||
// resolve the new kernel info to account for kernel handlers
|
||||
@@ -1232,10 +1233,7 @@ void Kernel::makeResident(CommandStreamReceiver &commandStreamReceiver) {
|
||||
}
|
||||
|
||||
gtpinNotifyMakeResident(this, &commandStreamReceiver);
|
||||
|
||||
if (unifiedMemoryControls.indirectDeviceAllocationsAllowed ||
|
||||
unifiedMemoryControls.indirectHostAllocationsAllowed ||
|
||||
unifiedMemoryControls.indirectSharedAllocationsAllowed) {
|
||||
if (kernelHasIndirectAccess && unifiedMemoryControls.anyIndirectAllocationsAllowed()) {
|
||||
this->getContext().getSVMAllocsManager()->makeInternalAllocationsResident(commandStreamReceiver, unifiedMemoryControls.generateMask());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user