Refactor state base address programing 3/n

This is small optimization to replace virtual call and retrieved struct with
cached value.

Related-To: NEO-5055

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
Zbigniew Zdanowicz
2023-02-22 21:30:40 +00:00
committed by Compute-Runtime-Automation
parent 075c96267d
commit 3cb064fe95
25 changed files with 94 additions and 64 deletions

View File

@@ -238,7 +238,8 @@ void EncodeDispatchKernel<Family>::encode(CommandContainer &container, EncodeDis
statelessMocsIndex, // statelessMocsIndex
args.useGlobalAtomics, // useGlobalAtomics
args.partitionCount > 1, // multiOsContextCapable
args.isRcs}; // isRcs
args.isRcs, // isRcs
container.doubleSbaWa}; // doubleSbaWa
EncodeStateBaseAddress<Family>::encode(encodeStateBaseAddressArgs);
container.setDirtyStateForAllHeaps(false);
}
@@ -541,7 +542,6 @@ void EncodeStateBaseAddress<Family>::encode(EncodeStateBaseAddressArgs<Family> &
ioh, // ioh
ssh, // ssh
gmmHelper, // gmmHelper
&args.container->getDevice()->getHardwareInfo(), // hwInfo
args.statelessMocsIndex, // statelessMocsIndex
NEO::MemoryCompressionState::NotApplicable, // memoryCompressionState
true, // setInstructionStateBaseAddress
@@ -551,7 +551,8 @@ void EncodeStateBaseAddress<Family>::encode(EncodeStateBaseAddressArgs<Family> &
args.useGlobalAtomics, // useGlobalAtomics
false, // areMultipleSubDevicesInContext
false, // overrideSurfaceStateBaseAddress
isDebuggerActive // isDebuggerActive
isDebuggerActive, // isDebuggerActive
args.doubleSbaWa // doubleSbaWa
};
StateBaseAddressHelper<Family>::programStateBaseAddressIntoCommandStream(stateBaseAddressHelperArgs,