Skip to content

Commit 43ab427

Browse files
committed
vulkan : fix subbuffer size not accounting for misalign offset
1 parent b6c4a11 commit 43ab427

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

ggml/src/ggml-vulkan/ggml-vulkan.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7571,10 +7571,10 @@ static void ggml_vk_op_f32(ggml_backend_vk_context * ctx, vk_context& subctx, co
75717571
d_buf_offset &= ~(ctx->device->properties.limits.minStorageBufferOffsetAlignment - 1);
75727572

75737573
if (op_supports_incontiguous) {
7574-
x_sz = ggml_nbytes(src0);
7575-
y_sz = use_src1 ? ggml_nbytes(src1) : 0;
7576-
z_sz = use_src2 ? ggml_nbytes(src2) : 0;
7577-
d_sz = ggml_nbytes(dst);
7574+
x_sz = ggml_nbytes(src0) + get_misalign_bytes(ctx, src0);
7575+
y_sz = use_src1 ? ggml_nbytes(src1) + get_misalign_bytes(ctx, src1) : 0;
7576+
z_sz = use_src2 ? ggml_nbytes(src2) + get_misalign_bytes(ctx, src2) : 0;
7577+
d_sz = ggml_nbytes(dst) + get_misalign_bytes(ctx, dst);
75787578

75797579
if (x_buf_offset + x_sz >= d_X->size) {
75807580
x_sz = VK_WHOLE_SIZE;

0 commit comments

Comments
 (0)