Move pipecontrol w/a estimation to dedicated class

Change-Id: I8ceaa2dff94dd7148daf921568fd30f098e5dae4
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
Zbigniew Zdanowicz
2020-10-05 18:32:55 +02:00
committed by sys_ocldev
parent ff85c29e5c
commit 28ef5fa709
21 changed files with 53 additions and 53 deletions

View File

@@ -257,6 +257,17 @@ uint32_t HwHelperHw<Family>::getMocsIndex(const GmmHelper &gmmHelper, bool l3ena
return gmmHelper.getMOCS(GMM_RESOURCE_USAGE_OCL_BUFFER_CACHELINE_MISALIGNED) >> 1;
}
template <>
bool MemorySynchronizationCommands<TGLLPFamily>::isPipeControlWArequired(const HardwareInfo &hwInfo) {
HwHelper &hwHelper = HwHelper::get(hwInfo.platform.eRenderCoreFamily);
return (Gen12LPHelpers::pipeControlWaRequired(hwInfo.platform.eProductFamily)) && hwHelper.isWorkaroundRequired(REVISION_A0, REVISION_B, hwInfo);
}
template <>
bool MemorySynchronizationCommands<TGLLPFamily>::isPipeControlPriorToPipelineSelectWArequired(const HardwareInfo &hwInfo) {
return MemorySynchronizationCommands<TGLLPFamily>::isPipeControlWArequired(hwInfo);
}
template class HwHelperHw<Family>;
template class FlatBatchBufferHelperHw<Family>;
template struct MemorySynchronizationCommands<Family>;

View File

@@ -10,8 +10,6 @@
#include "shared/source/helpers/engine_node_helper.h"
#include "shared/source/helpers/preamble_bdw_plus.inl"
#include "opencl/source/helpers/hardware_commands_helper.h"
#include "pipe_control_args.h"
#include "reg_configs_common.h"
@@ -38,7 +36,7 @@ void PreambleHelper<TGLLPFamily>::programPipelineSelect(LinearStream *pCommandSt
using PIPELINE_SELECT = typename TGLLPFamily::PIPELINE_SELECT;
if (HardwareCommandsHelper<TGLLPFamily>::isPipeControlPriorToPipelineSelectWArequired(hwInfo)) {
if (MemorySynchronizationCommands<TGLLPFamily>::isPipeControlPriorToPipelineSelectWArequired(hwInfo)) {
PipeControlArgs args;
args.renderTargetCacheFlushEnable = true;
MemorySynchronizationCommands<TGLLPFamily>::addPipeControl(*pCommandStream, args);