Skip to content

b9891

Choose a tag to compare

@github-actions github-actions released this 06 Jul 21:23
f36e5c3

metal: add col2im_1d op (f32/f16/bf16) (#25176)

  • metal: add col2im_1d op (f32/f16/bf16)

Gather kernel mirroring the CPU/CUDA path: each output (t_out, oc)
reads its ceil(K/s0) source columns with an F32 accumulator, a single
write and no atomics. One thread per output element, 256 per
threadgroup.

  • metal: check dst contiguity and type match in supports_op for COL2IM_1D

Align the GGML_OP_COL2IM_1D predicate with the CPU, CUDA, and Vulkan
backends: the kernel writes dst with linear indexing and assumes the
same type as src0, so supports_op must also require a contiguous dst
and op->type == op->src[0]->type.

  • Update ggml/src/ggml-metal/ggml-metal.metal

Co-authored-by: YiChen Lv 63285796+forforever73@users.noreply.github.com


Co-authored-by: YiChen Lv 63285796+forforever73@users.noreply.github.com

macOS/iOS:

Linux:

Android:

Windows:

openEuler:

  • DISABLED
  • openEuler x86 (310p)
  • openEuler x86 (910b, ACL Graph)
  • openEuler aarch64 (310p)
  • openEuler aarch64 (910b, ACL Graph)

UI: