mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-23 03:33:13 +08:00
refactor: add command list state base address hook method
Related-To: NEO-10492 Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
6d8188bc56
commit
2efa5cb907
@@ -334,7 +334,9 @@ struct CommandListCoreFamily : public CommandListImp {
|
|||||||
void appendEventForProfiling(Event *event, CommandToPatchContainer *outTimeStampSyncCmds, bool beforeWalker, bool skipBarrierForEndProfiling, bool skipAddingEventToResidency, bool copyOperation);
|
void appendEventForProfiling(Event *event, CommandToPatchContainer *outTimeStampSyncCmds, bool beforeWalker, bool skipBarrierForEndProfiling, bool skipAddingEventToResidency, bool copyOperation);
|
||||||
void appendEventForProfilingCopyCommand(Event *event, bool beforeWalker);
|
void appendEventForProfilingCopyCommand(Event *event, bool beforeWalker);
|
||||||
void appendSignalEventPostWalker(Event *event, void **syncCmdBuffer, CommandToPatchContainer *outTimeStampSyncCmds, bool skipBarrierForEndProfiling, bool skipAddingEventToResidency, bool copyOperation);
|
void appendSignalEventPostWalker(Event *event, void **syncCmdBuffer, CommandToPatchContainer *outTimeStampSyncCmds, bool skipBarrierForEndProfiling, bool skipAddingEventToResidency, bool copyOperation);
|
||||||
virtual void programStateBaseAddress(NEO::CommandContainer &container, bool useSbaProperties);
|
void programStateBaseAddress(NEO::CommandContainer &container, bool useSbaProperties);
|
||||||
|
virtual void programStateBaseAddressHook(size_t cmdBufferOffset, bool surfaceBaseAddressModify) {
|
||||||
|
}
|
||||||
void appendComputeBarrierCommand();
|
void appendComputeBarrierCommand();
|
||||||
NEO::PipeControlArgs createBarrierFlags();
|
NEO::PipeControlArgs createBarrierFlags();
|
||||||
void appendMultiTileBarrier(NEO::Device &neoDevice);
|
void appendMultiTileBarrier(NEO::Device &neoDevice);
|
||||||
|
|||||||
@@ -3870,7 +3870,7 @@ void CommandListCoreFamily<gfxCoreFamily>::programStateBaseAddress(NEO::CommandC
|
|||||||
this->doubleSbaWa, // doubleSbaWa
|
this->doubleSbaWa, // doubleSbaWa
|
||||||
this->heaplessModeEnabled // heaplessModeEnabled
|
this->heaplessModeEnabled // heaplessModeEnabled
|
||||||
};
|
};
|
||||||
|
auto offsetSbaCmd = container.getCommandStream()->getUsed();
|
||||||
NEO::EncodeStateBaseAddress<GfxFamily>::encode(encodeStateBaseAddressArgs);
|
NEO::EncodeStateBaseAddress<GfxFamily>::encode(encodeStateBaseAddressArgs);
|
||||||
|
|
||||||
bool sbaTrackingEnabled = NEO::Debugger::isDebugEnabled(this->internalUsage) && this->device->getL0Debugger();
|
bool sbaTrackingEnabled = NEO::Debugger::isDebugEnabled(this->internalUsage) && this->device->getL0Debugger();
|
||||||
@@ -3878,6 +3878,8 @@ void CommandListCoreFamily<gfxCoreFamily>::programStateBaseAddress(NEO::CommandC
|
|||||||
*this->device->getNEODevice(),
|
*this->device->getNEODevice(),
|
||||||
*container.getCommandStream(),
|
*container.getCommandStream(),
|
||||||
sba, (this->isFlushTaskSubmissionEnabled || this->dispatchCmdListBatchBufferAsPrimary));
|
sba, (this->isFlushTaskSubmissionEnabled || this->dispatchCmdListBatchBufferAsPrimary));
|
||||||
|
|
||||||
|
programStateBaseAddressHook(offsetSbaCmd, sba.getSurfaceStateBaseAddressModifyEnable());
|
||||||
}
|
}
|
||||||
|
|
||||||
template <GFXCORE_FAMILY gfxCoreFamily>
|
template <GFXCORE_FAMILY gfxCoreFamily>
|
||||||
|
|||||||
Reference in New Issue
Block a user