diff --git a/ggml/src/ggml-vulkan/ggml-vulkan.cpp b/ggml/src/ggml-vulkan/ggml-vulkan.cpp index 74c339930..2b22efdfd 100644 --- a/ggml/src/ggml-vulkan/ggml-vulkan.cpp +++ b/ggml/src/ggml-vulkan/ggml-vulkan.cpp @@ -13579,6 +13579,8 @@ static void ggml_vk_concat(ggml_backend_vk_context * ctx, vk_context& subctx, co const uint32_t ts = ggml_type_size(s->type); return s->nb[1] == ts // dim1 innermost && s->nb[0] == (size_t) s->ne[1] * ts // consistent 2D transpose + && s->ne[0] >= 32 // at least one full transpose tile (TILE_DIM); at 1 token the + // tiled path is pure overhead, the generic copy is faster && s->ne[2] == 1 && s->ne[3] == 1; }; const uint32_t dst_ts = ggml_type_size(dst->type);