[all-commits] [llvm/llvm-project] 52ca14: [mlir][spirv] Allow controlling subgroup size

Lei Zhang via All-commits all-commits at lists.llvm.org
Wed Nov 30 09:39:47 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 52ca1499313fb72efa635d86d285fc4a36c58f34
      https://github.com/llvm/llvm-project/commit/52ca1499313fb72efa635d86d285fc4a36c58f34
  Author: Lei Zhang <antiagainst at gmail.com>
  Date:   2022-11-30 (Wed, 30 Nov 2022)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVAttributes.td
    M mlir/include/mlir/Dialect/SPIRV/IR/TargetAndABI.h
    M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
    M mlir/lib/Conversion/LinalgToSPIRV/LinalgToSPIRV.cpp
    M mlir/lib/Dialect/SPIRV/IR/TargetAndABI.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
    M mlir/test/Conversion/GPUToSPIRV/builtins.mlir
    M mlir/test/Conversion/GPUToSPIRV/entry-point.mlir
    M mlir/test/Conversion/GPUToSPIRV/gpu-to-spirv.mlir
    M mlir/test/Conversion/GPUToSPIRV/load-store.mlir
    M mlir/test/Conversion/GPUToSPIRV/module-opencl.mlir
    M mlir/test/Conversion/GPUToSPIRV/shuffle.mlir
    M mlir/test/Conversion/GPUToSPIRV/wmma-ops-to-spirv.mlir
    M mlir/test/Conversion/LinalgToSPIRV/linalg-to-spirv.mlir
    M mlir/test/Conversion/SPIRVToLLVM/lower-host-to-llvm-calls.mlir
    M mlir/test/Dialect/SPIRV/IR/target-and-abi.mlir
    M mlir/test/Dialect/SPIRV/Linking/ModuleCombiner/deduplication.mlir
    M mlir/test/Dialect/SPIRV/Transforms/abi-interface-opencl.mlir
    M mlir/test/Dialect/SPIRV/Transforms/abi-interface.mlir
    M mlir/test/Dialect/SPIRV/Transforms/abi-load-store.mlir
    M mlir/test/lib/Dialect/SPIRV/TestEntryPointAbi.cpp
    M mlir/test/mlir-spirv-cpu-runner/double.mlir
    M mlir/test/mlir-spirv-cpu-runner/simple_add.mlir
    M mlir/test/mlir-vulkan-runner/addf.mlir
    M mlir/test/mlir-vulkan-runner/addi.mlir
    M mlir/test/mlir-vulkan-runner/addi8.mlir
    M mlir/test/mlir-vulkan-runner/mulf.mlir
    M mlir/test/mlir-vulkan-runner/subf.mlir
    M mlir/test/mlir-vulkan-runner/time.mlir

  Log Message:
  -----------
  [mlir][spirv] Allow controlling subgroup size

This commit extends the `ResourceLimitsAttr` to support specifying
a minimal and maximal subgroup size, and extends `EntryPointABIAttr`
to support specifying the requested subgroup size. This is possible
now in Vulkan with the VK_EXT_subgroup_size_control extension.
For OpenCL it's possible to use the `SubgroupSize` execution mode
directly.

Reviewed By: ThomasRaoux

Differential Revision: https://reviews.llvm.org/D138962




More information about the All-commits mailing list