|
MLIR
22.0.0git
|
Builder for warp ids used to map scf.forall to reindexed warps. More...
#include "mlir/Dialect/GPU/TransformOps/Utils.h"
Inheritance diagram for mlir::transform::gpu::GpuWarpIdBuilder:Public Member Functions | |
| GpuWarpIdBuilder (MLIRContext *ctx, int64_t warpSize, bool useLinearMapping=false, DeviceMaskingAttrInterface mask=nullptr) | |
Public Member Functions inherited from mlir::transform::gpu::GpuIdBuilder | |
| GpuIdBuilder ()=default | |
| GpuIdBuilder (MLIRContext *ctx, bool useLinearMapping, const MappingIdBuilderFnType &builder) | |
Public Attributes | |
| int64_t | warpSize = 32 |
Public Attributes inherited from mlir::transform::gpu::GpuIdBuilder | |
| SmallVector< DeviceMappingAttrInterface > | mappingAttributes |
| The mapping attributes targeted by this generator. More... | |
| GpuIdBuilderFnType | idBuilder |
| The constructor that builds the concrete IR for mapping ids. More... | |
Additional Inherited Members | |
Public Types inherited from mlir::transform::gpu::GpuIdBuilder | |
| using | MappingIdBuilderFnType = std::function< DeviceMappingAttrInterface(MLIRContext *, mlir::gpu::MappingId)> |
Builder for warp ids used to map scf.forall to reindexed warps.
If useLinearMapping is false, the idBuilder method returns 3D values used for indexing rewrites as well as 3D sizes for predicate generation. If useLinearMapping is true, the idBuilder method returns nD values used for indexing rewrites as well as 1D sizes for predicate generation. If mask is provided, it will be used to filter the active warps.
| mlir::transform::gpu::GpuWarpIdBuilder::GpuWarpIdBuilder | ( | MLIRContext * | ctx, |
| int64_t | warpSize, | ||
| bool | useLinearMapping = false, |
||
| DeviceMaskingAttrInterface | mask = nullptr |
||
| ) |
Definition at line 323 of file Utils.cpp.
References mlir::get().
| int64_t mlir::transform::gpu::GpuWarpIdBuilder::warpSize = 32 |