[perf] reduce host overhead in command list reset call

There is no need to reset all fields and load support flags every reset call.
Add dedicated calls that will reset values and dirty flags.
Call virtual methods only once at init time.

Related-To: NEO-7828

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
Zbigniew Zdanowicz
2023-04-03 22:03:02 +00:00
committed by Compute-Runtime-Automation
parent 71fe65b327
commit e695059152
6 changed files with 274 additions and 4 deletions

View File

@@ -111,10 +111,8 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::reset() {
commandListPreemptionMode = device->getDevicePreemptionMode();
commandListPerThreadScratchSize = 0u;
commandListPerThreadPrivateScratchSize = 0u;
auto &rootDeviceEnvironment = this->device->getNEODevice()->getRootDeviceEnvironment();
requiredStreamState = {};
requiredStreamState.initSupport(rootDeviceEnvironment);
finalStreamState = requiredStreamState;
requiredStreamState.resetState();
finalStreamState.resetState();
containsAnyKernel = false;
containsCooperativeKernelsFlag = false;
clearCommandsToPatch();