2019-01-10 22:36:57 +08:00
|
|
|
/*
|
2022-03-08 01:00:26 +08:00
|
|
|
* Copyright (C) 2020-2022 Intel Corporation
|
2019-01-10 22:36:57 +08:00
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: MIT
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
2020-08-27 04:36:51 +08:00
|
|
|
#include "shared/source/gen11/aub_mapper.h"
|
2022-05-25 22:39:35 +08:00
|
|
|
#include "shared/source/gen11/hw_cmds_base.h"
|
2020-02-24 05:44:01 +08:00
|
|
|
#include "shared/source/helpers/flat_batch_buffer_helper_hw.inl"
|
2020-10-22 17:25:32 +08:00
|
|
|
#include "shared/source/helpers/hw_helper_base.inl"
|
2021-08-03 19:48:35 +08:00
|
|
|
#include "shared/source/helpers/hw_helper_bdw_and_later.inl"
|
2020-10-22 17:25:32 +08:00
|
|
|
#include "shared/source/helpers/hw_helper_bdw_to_icllp.inl"
|
2020-02-24 17:22:30 +08:00
|
|
|
|
2019-01-10 22:36:57 +08:00
|
|
|
namespace NEO {
|
|
|
|
typedef ICLFamily Family;
|
|
|
|
|
|
|
|
template <>
|
|
|
|
uint32_t HwHelperHw<Family>::getComputeUnitsUsedForScratch(const HardwareInfo *pHwInfo) const {
|
2019-05-08 22:00:24 +08:00
|
|
|
return pHwInfo->gtSystemInfo.MaxSubSlicesSupported * pHwInfo->gtSystemInfo.MaxEuPerSubSlice * 8;
|
2019-01-10 22:36:57 +08:00
|
|
|
}
|
|
|
|
|
2020-02-06 22:10:59 +08:00
|
|
|
template <>
|
2022-05-25 23:35:43 +08:00
|
|
|
std::string HwHelperHw<Family>::getExtensions(const HardwareInfo &hwInfo) const {
|
2020-02-06 22:10:59 +08:00
|
|
|
return "cl_intel_subgroup_local_block_io ";
|
|
|
|
}
|
|
|
|
|
2020-08-04 02:39:06 +08:00
|
|
|
template <>
|
2022-03-08 01:00:26 +08:00
|
|
|
int32_t HwHelperHw<Family>::getDefaultThreadArbitrationPolicy() const {
|
2020-08-04 02:39:06 +08:00
|
|
|
return ThreadArbitrationPolicy::RoundRobinAfterDependency;
|
|
|
|
}
|
|
|
|
|
2021-09-07 21:59:44 +08:00
|
|
|
template <>
|
|
|
|
bool HwHelperHw<Family>::packedFormatsSupported() const {
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
2019-01-10 22:36:57 +08:00
|
|
|
template class HwHelperHw<Family>;
|
|
|
|
template class FlatBatchBufferHelperHw<Family>;
|
2020-02-17 19:45:24 +08:00
|
|
|
template struct MemorySynchronizationCommands<Family>;
|
2020-04-28 22:48:23 +08:00
|
|
|
template struct LriHelper<Family>;
|
2019-01-10 22:36:57 +08:00
|
|
|
} // namespace NEO
|