Spaces:
Running
Running
Commit
·
f14c1ad
1
Parent(s):
643bcdb
CUDA/HIP: fix tests/test-backend-ops (llama/8896)
Browse files- ggml/src/ggml-cuda.cu +7 -6
ggml/src/ggml-cuda.cu
CHANGED
|
@@ -2742,11 +2742,12 @@ GGML_CALL static bool ggml_backend_cuda_supports_op(ggml_backend_t backend, cons
|
|
| 2742 |
case GGML_OP_MUL_MAT_ID:
|
| 2743 |
{
|
| 2744 |
struct ggml_tensor * a = op->src[0];
|
| 2745 |
-
|
| 2746 |
-
|
| 2747 |
-
|
| 2748 |
-
|
| 2749 |
-
|
|
|
|
| 2750 |
}
|
| 2751 |
switch (a->type) {
|
| 2752 |
case GGML_TYPE_F32:
|
|
@@ -2877,7 +2878,7 @@ GGML_CALL static bool ggml_backend_cuda_supports_op(ggml_backend_t backend, cons
|
|
| 2877 |
return true;
|
| 2878 |
case GGML_OP_FLASH_ATTN_EXT:
|
| 2879 |
#if defined(GGML_USE_HIPBLAS) && defined(__HIP_PLATFORM_AMD__)
|
| 2880 |
-
return op->src[0]->ne[0] == 64 || op->src[0]->ne[0] == 128;
|
| 2881 |
#else
|
| 2882 |
if (op->src[0]->ne[0] == 128) {
|
| 2883 |
return true;
|
|
|
|
| 2742 |
case GGML_OP_MUL_MAT_ID:
|
| 2743 |
{
|
| 2744 |
struct ggml_tensor * a = op->src[0];
|
| 2745 |
+
struct ggml_tensor * b = op->src[1];
|
| 2746 |
+
if (b->type == GGML_TYPE_F16 && a->type != GGML_TYPE_F16) {
|
| 2747 |
+
return false;
|
| 2748 |
+
}
|
| 2749 |
+
if (op->op == GGML_OP_MUL_MAT && a->ne[3] != b->ne[3]) {
|
| 2750 |
+
return false;
|
| 2751 |
}
|
| 2752 |
switch (a->type) {
|
| 2753 |
case GGML_TYPE_F32:
|
|
|
|
| 2878 |
return true;
|
| 2879 |
case GGML_OP_FLASH_ATTN_EXT:
|
| 2880 |
#if defined(GGML_USE_HIPBLAS) && defined(__HIP_PLATFORM_AMD__)
|
| 2881 |
+
return (op->src[0]->ne[0] == 64 && op->src[1]->type == GGML_TYPE_F16) || op->src[0]->ne[0] == 128;
|
| 2882 |
#else
|
| 2883 |
if (op->src[0]->ne[0] == 128) {
|
| 2884 |
return true;
|