Spaces:
Sleeping
Sleeping
Ouadie EL FAROUKI
commited on
Commit
·
5239c28
1
Parent(s):
1bdb50a
Fixed dequant precision issues in Q4_1 and Q5_1 (llama/9711)
Browse files
ggml/src/ggml-sycl/dequantize.hpp
CHANGED
|
@@ -55,12 +55,12 @@ static __dpct_inline__ void dequantize_q4_1(const void *vx, const int64_t ib,
|
|
| 55 |
#ifdef GGML_SYCL_F16
|
| 56 |
// v = v * {d, d};
|
| 57 |
// v = v + {m, m};
|
| 58 |
-
v.s0() = (v.s0()
|
| 59 |
-
v.s1() = (v.s1()
|
| 60 |
|
| 61 |
#else
|
| 62 |
-
v.x() = (v.x()
|
| 63 |
-
v.y() = (v.y()
|
| 64 |
#endif // GGML_SYCL_F16
|
| 65 |
}
|
| 66 |
|
|
@@ -110,11 +110,11 @@ static __dpct_inline__ void dequantize_q5_1(const void *vx, const int64_t ib,
|
|
| 110 |
#ifdef GGML_SYCL_F16
|
| 111 |
// v = v * {d, d};
|
| 112 |
// v = v + {m, m};
|
| 113 |
-
v.s0() = (v.s0()
|
| 114 |
-
v.s1() = (v.s1()
|
| 115 |
#else
|
| 116 |
-
v.x() = (v.x()
|
| 117 |
-
v.y() = (v.y()
|
| 118 |
#endif // GGML_SYCL_F16
|
| 119 |
}
|
| 120 |
|
|
|
|
| 55 |
#ifdef GGML_SYCL_F16
|
| 56 |
// v = v * {d, d};
|
| 57 |
// v = v + {m, m};
|
| 58 |
+
v.s0() = sycl::fma(v.s0(), d, m);
|
| 59 |
+
v.s1() = sycl::fma(v.s1(), d, m);
|
| 60 |
|
| 61 |
#else
|
| 62 |
+
v.x() = sycl::fma(v.x(), d, m);
|
| 63 |
+
v.y() = sycl::fma(v.y(), d, m);
|
| 64 |
#endif // GGML_SYCL_F16
|
| 65 |
}
|
| 66 |
|
|
|
|
| 110 |
#ifdef GGML_SYCL_F16
|
| 111 |
// v = v * {d, d};
|
| 112 |
// v = v + {m, m};
|
| 113 |
+
v.s0() = sycl::fma(v.s0(), d, m);
|
| 114 |
+
v.s1() = sycl::fma(v.s1(), d, m);
|
| 115 |
#else
|
| 116 |
+
v.x() = sycl::fma(v.x(), d, m);
|
| 117 |
+
v.y() = sycl::fma(v.y(), d, m);
|
| 118 |
#endif // GGML_SYCL_F16
|
| 119 |
}
|
| 120 |
|