mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-24 21:18:24 +08:00
feature: initial support for new zeinfo args
Related-To: NEO-8070 Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
dd1b9d6abc
commit
c612a86d28
@@ -123,6 +123,9 @@ inline constexpr ConstStringRef dataGlobalBuffer("global_base");
|
||||
inline constexpr ConstStringRef assertBuffer("assert_buffer");
|
||||
inline constexpr ConstStringRef indirectDataPointer("indirect_data_pointer");
|
||||
inline constexpr ConstStringRef scratchPointer("scratch_pointer");
|
||||
inline constexpr ConstStringRef regionGroupSize("region_group_size");
|
||||
inline constexpr ConstStringRef regionGroupDimension("region_group_dimension");
|
||||
inline constexpr ConstStringRef regionGroupWgCount("region_group_wg_count");
|
||||
|
||||
namespace Image {
|
||||
inline constexpr ConstStringRef width("image_width");
|
||||
@@ -492,6 +495,9 @@ enum ArgType : uint8_t {
|
||||
argTypeAssertBuffer,
|
||||
argTypeIndirectDataPointer,
|
||||
argTypeScratchPointer,
|
||||
argTypeRegionGroupSize,
|
||||
argTypeRegionGroupDimension,
|
||||
argTypeRegionGroupWgCount,
|
||||
argTypeMax
|
||||
};
|
||||
|
||||
|
||||
@@ -1343,6 +1343,15 @@ DecodeError populateKernelPayloadArgument(NEO::KernelDescriptor &dst, const Kern
|
||||
|
||||
case Types::Kernel::argTypeVmeSearchPathType:
|
||||
return populateWithOffset(getVmeDescriptor()->searchPathType);
|
||||
|
||||
case Types::Kernel::argTypeRegionGroupSize:
|
||||
return populateArgVec(dst.payloadMappings.dispatchTraits.regionGroupSize, Tags::Kernel::PayloadArgument::ArgType::regionGroupSize);
|
||||
|
||||
case Types::Kernel::argTypeRegionGroupDimension:
|
||||
return populateWithOffsetChecked(dst.payloadMappings.dispatchTraits.regionGroupDimension, sizeof(int32_t), Tags::Kernel::PayloadArgument::ArgType::regionGroupDimension);
|
||||
|
||||
case Types::Kernel::argTypeRegionGroupWgCount:
|
||||
return populateWithOffsetChecked(dst.payloadMappings.dispatchTraits.regionGroupWgCount, sizeof(int32_t), Tags::Kernel::PayloadArgument::ArgType::regionGroupWgCount);
|
||||
}
|
||||
|
||||
UNREACHABLE();
|
||||
|
||||
@@ -22,47 +22,52 @@ using namespace Tags::Kernel::PayloadArgument::ArgType::Sampler::Vme;
|
||||
using ArgType = Types::Kernel::ArgType;
|
||||
|
||||
inline constexpr ConstStringRef name = "argument type";
|
||||
inline constexpr LookupArray<ConstStringRef, ArgType, 41> lookup({{{packedLocalIds, ArgType::argTypePackedLocalIds},
|
||||
{localId, ArgType::argTypeLocalId},
|
||||
{localSize, ArgType::argTypeLocalSize},
|
||||
{groupCount, ArgType::argTypeGroupCount},
|
||||
{globalSize, ArgType::argTypeGlobalSize},
|
||||
{enqueuedLocalSize, ArgType::argTypeEnqueuedLocalSize},
|
||||
{globalIdOffset, ArgType::argTypeGlobalIdOffset},
|
||||
{privateBaseStateless, ArgType::argTypePrivateBaseStateless},
|
||||
{argByvalue, ArgType::argTypeArgByvalue},
|
||||
{argBypointer, ArgType::argTypeArgBypointer},
|
||||
{bufferAddress, ArgType::argTypeBufferAddress},
|
||||
{bufferOffset, ArgType::argTypeBufferOffset},
|
||||
{printfBuffer, ArgType::argTypePrintfBuffer},
|
||||
{workDimensions, ArgType::argTypeWorkDimensions},
|
||||
{implicitArgBuffer, ArgType::argTypeImplicitArgBuffer},
|
||||
{width, ArgType::argTypeImageWidth},
|
||||
{height, ArgType::argTypeImageHeight},
|
||||
{depth, ArgType::argTypeImageDepth},
|
||||
{channelDataType, ArgType::argTypeImageChannelDataType},
|
||||
{channelOrder, ArgType::argTypeImageChannelOrder},
|
||||
{arraySize, ArgType::argTypeImageArraySize},
|
||||
{numSamples, ArgType::argTypeImageNumSamples},
|
||||
{numMipLevels, ArgType::argTypeImageMipLevels},
|
||||
{flatBaseOffset, ArgType::argTypeImageFlatBaseOffset},
|
||||
{flatWidth, ArgType::argTypeImageFlatWidth},
|
||||
{flatHeight, ArgType::argTypeImageFlatHeight},
|
||||
{flatPitch, ArgType::argTypeImageFlatPitch},
|
||||
{snapWa, ArgType::argTypeSamplerSnapWa},
|
||||
{normCoords, ArgType::argTypeSamplerNormCoords},
|
||||
{addrMode, ArgType::argTypeSamplerAddrMode},
|
||||
{blockType, ArgType::argTypeVmeMbBlockType},
|
||||
{subpixelMode, ArgType::argTypeVmeSubpixelMode},
|
||||
{sadAdjustMode, ArgType::argTypeVmeSadAdjustMode},
|
||||
{searchPathType, ArgType::argTypeVmeSearchPathType},
|
||||
{syncBuffer, ArgType::argTypeSyncBuffer},
|
||||
{rtGlobalBuffer, ArgType::argTypeRtGlobalBuffer},
|
||||
{dataConstBuffer, ArgType::argTypeDataConstBuffer},
|
||||
{dataGlobalBuffer, ArgType::argTypeDataGlobalBuffer},
|
||||
{assertBuffer, ArgType::argTypeAssertBuffer},
|
||||
{indirectDataPointer, ArgType::argTypeIndirectDataPointer},
|
||||
{scratchPointer, ArgType::argTypeScratchPointer}}});
|
||||
inline constexpr LookupArray<ConstStringRef, ArgType, 44> lookup({{
|
||||
{packedLocalIds, ArgType::argTypePackedLocalIds},
|
||||
{localId, ArgType::argTypeLocalId},
|
||||
{localSize, ArgType::argTypeLocalSize},
|
||||
{groupCount, ArgType::argTypeGroupCount},
|
||||
{globalSize, ArgType::argTypeGlobalSize},
|
||||
{enqueuedLocalSize, ArgType::argTypeEnqueuedLocalSize},
|
||||
{globalIdOffset, ArgType::argTypeGlobalIdOffset},
|
||||
{privateBaseStateless, ArgType::argTypePrivateBaseStateless},
|
||||
{argByvalue, ArgType::argTypeArgByvalue},
|
||||
{argBypointer, ArgType::argTypeArgBypointer},
|
||||
{bufferAddress, ArgType::argTypeBufferAddress},
|
||||
{bufferOffset, ArgType::argTypeBufferOffset},
|
||||
{printfBuffer, ArgType::argTypePrintfBuffer},
|
||||
{workDimensions, ArgType::argTypeWorkDimensions},
|
||||
{implicitArgBuffer, ArgType::argTypeImplicitArgBuffer},
|
||||
{width, ArgType::argTypeImageWidth},
|
||||
{height, ArgType::argTypeImageHeight},
|
||||
{depth, ArgType::argTypeImageDepth},
|
||||
{channelDataType, ArgType::argTypeImageChannelDataType},
|
||||
{channelOrder, ArgType::argTypeImageChannelOrder},
|
||||
{arraySize, ArgType::argTypeImageArraySize},
|
||||
{numSamples, ArgType::argTypeImageNumSamples},
|
||||
{numMipLevels, ArgType::argTypeImageMipLevels},
|
||||
{flatBaseOffset, ArgType::argTypeImageFlatBaseOffset},
|
||||
{flatWidth, ArgType::argTypeImageFlatWidth},
|
||||
{flatHeight, ArgType::argTypeImageFlatHeight},
|
||||
{flatPitch, ArgType::argTypeImageFlatPitch},
|
||||
{snapWa, ArgType::argTypeSamplerSnapWa},
|
||||
{normCoords, ArgType::argTypeSamplerNormCoords},
|
||||
{addrMode, ArgType::argTypeSamplerAddrMode},
|
||||
{blockType, ArgType::argTypeVmeMbBlockType},
|
||||
{subpixelMode, ArgType::argTypeVmeSubpixelMode},
|
||||
{sadAdjustMode, ArgType::argTypeVmeSadAdjustMode},
|
||||
{searchPathType, ArgType::argTypeVmeSearchPathType},
|
||||
{syncBuffer, ArgType::argTypeSyncBuffer},
|
||||
{rtGlobalBuffer, ArgType::argTypeRtGlobalBuffer},
|
||||
{dataConstBuffer, ArgType::argTypeDataConstBuffer},
|
||||
{dataGlobalBuffer, ArgType::argTypeDataGlobalBuffer},
|
||||
{assertBuffer, ArgType::argTypeAssertBuffer},
|
||||
{indirectDataPointer, ArgType::argTypeIndirectDataPointer},
|
||||
{scratchPointer, ArgType::argTypeScratchPointer},
|
||||
{regionGroupSize, ArgType::argTypeRegionGroupSize},
|
||||
{regionGroupDimension, ArgType::argTypeRegionGroupDimension},
|
||||
{regionGroupWgCount, ArgType::argTypeRegionGroupWgCount},
|
||||
}});
|
||||
static_assert(lookup.size() == ArgType::argTypeMax - 1, "Every enum field must be present");
|
||||
} // namespace ArgType
|
||||
|
||||
|
||||
Reference in New Issue
Block a user