Skip to content

Commit 7aaeedc

Browse files
authored
metal : support I32 -> I32 copy (#17317)
1 parent 3347e6d commit 7aaeedc

File tree

2 files changed

+2
-1
lines changed

2 files changed

+2
-1
lines changed

ggml/src/ggml-metal/ggml-metal-device.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -989,7 +989,7 @@ bool ggml_metal_device_supports_op(ggml_metal_device_t dev, const struct ggml_te
989989
return false;
990990
}
991991
case GGML_TYPE_I32:
992-
return op->type == GGML_TYPE_F32;
992+
return op->type == GGML_TYPE_F32 || op->type == GGML_TYPE_I32;
993993
default:
994994
return false;
995995
};

ggml/src/ggml-metal/ggml-metal.metal

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6560,6 +6560,7 @@ template [[host_name("kernel_cpy_f32_f32")]] kernel kernel_cpy_t kernel_cpy_t_
65606560
template [[host_name("kernel_cpy_f32_f16")]] kernel kernel_cpy_t kernel_cpy_t_t<float, half>;
65616561
template [[host_name("kernel_cpy_f32_i32")]] kernel kernel_cpy_t kernel_cpy_t_t<float, int32_t>;
65626562
template [[host_name("kernel_cpy_i32_f32")]] kernel kernel_cpy_t kernel_cpy_t_t<int32_t, float>;
6563+
template [[host_name("kernel_cpy_i32_i32")]] kernel kernel_cpy_t kernel_cpy_t_t<int32_t, int32_t>;
65636564
#if defined(GGML_METAL_HAS_BF16)
65646565
template [[host_name("kernel_cpy_f32_bf16")]] kernel kernel_cpy_t kernel_cpy_t_t<float, bfloat>;
65656566
#endif

0 commit comments

Comments
 (0)