Vulkan Phi Fix for AMD Proprietary Drivers (#5260)

* Replace tanh to avoid NaN in gelu shader on AMD proprietary driver

* Fix another Vulkan CPY buffer size bug
This commit is contained in:
0cc4m 2024-02-01 19:25:24 +01:00 committed by GitHub
parent 8ca511cade
commit 4d0924a890
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 83 additions and 69 deletions

View file

@ -2876,6 +2876,9 @@ static void ggml_vk_op_f32(vk_context * ctx, const ggml_tensor * src0, const ggm
x_sz = ggml_nbytes(src0);
d_sz = ggml_nbytes(dst);
if (extra_src0->offset + x_sz >= d_X->size) {
x_sz = VK_WHOLE_SIZE;
}
if (extra->offset + d_sz >= d_D->size) {
d_sz = VK_WHOLE_SIZE;
}
@ -2911,12 +2914,16 @@ static void ggml_vk_op_f32(vk_context * ctx, const ggml_tensor * src0, const ggm
break;
}
x_sz *= ne02 * ne03;
if (y_sz != VK_WHOLE_SIZE) {
y_sz *= ne12 * ne13;
}
if (op != GGML_OP_CPY) {
d_sz *= ne02 * ne03;
if (x_sz != VK_WHOLE_SIZE) {
x_sz *= ne02 * ne03;
}
if (y_sz != VK_WHOLE_SIZE) {
y_sz *= ne12 * ne13;
}
if (d_sz != VK_WHOLE_SIZE) {
d_sz *= ne02 * ne03;
}
}
if (!use_src1 && op == GGML_OP_SOFT_MAX) {