summaryrefslogtreecommitdiff
path: root/ggml/src/ggml-common.h
diff options
context:
space:
mode:
authorKawrakow <iwankawrakow@gmail.com>2024-12-20 12:02:42 +0100
committerGitHub <noreply@github.com>2024-12-20 12:02:42 +0100
commit4b53bc876eda6d89890711998b3ab5bf033b2199 (patch)
tree4624c21b636cb6c5121ae911c154ff8ed5702791 /ggml/src/ggml-common.h
parent7254f6d34024b708f15d3e6ce6926a808a4d0cc4 (diff)
IQ2_XXS_R4 (#154)
* iq2_xxs_r4: Zen4 Disapointing gain: 134.7 t/s -> 151.1 t/s for PP-512 TG-128 is better: 3.45 -> 4.61 t/s @ 1 thread * Minor * iq2_xxs_r4: NEON --------- Co-authored-by: Iwan Kawrakow <iwan.kawrakow@gmail.com>
Diffstat (limited to 'ggml/src/ggml-common.h')
-rw-r--r--ggml/src/ggml-common.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/ggml/src/ggml-common.h b/ggml/src/ggml-common.h
index b9da9771..ad21dd50 100644
--- a/ggml/src/ggml-common.h
+++ b/ggml/src/ggml-common.h
@@ -397,6 +397,13 @@ typedef struct {
} block_iq2_xxs;
static_assert(sizeof(block_iq2_xxs) == sizeof(ggml_half) + QK_K/8*sizeof(uint16_t), "wrong iq2_xxs block size/padding");
+typedef struct {
+ ggml_half d[4];
+ uint8_t sas[QK_K/2];
+ uint8_t qs[QK_K/2];
+} block_iq2_xxs_r4;
+static_assert(sizeof(block_iq2_xxs_r4) == 4*sizeof(block_iq2_xxs), "wrong iq2_xxs_r4 block size/padding");
+
// 2.3125 bpw quants
typedef struct {
ggml_half d;