Skip to content

Commit ddbe580

Browse files
committed
Add additional comments
1 parent 2f13a1e commit ddbe580

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

ggml/src/ggml-quants.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4368,6 +4368,7 @@ void ggml_vec_dot_q4_0_b16_q8_0_b16(int n, float * restrict s, size_t bs, const
43684368
__m128bh xd = m128bh(_mm_cvtepu16_epi32(_mm_set_epi64x(0, x_delta)));
43694369
__m128bh yd = m128bh(_mm_cvtepu16_epi32(_mm_set_epi64x(0, y_delta)));
43704370

4371+
// Computes product of delta values from four corresponding blocks
43714372
__m256 d = _mm256_castps128_ps256(_mm_dpbf16_ps(zerovec, xd, yd));
43724373
d = _mm256_permute2f128_ps(d ,d, 0);
43734374

@@ -5902,6 +5903,7 @@ void ggml_vec_dot_q8_0_b16_q8_0_b16(int n, float * restrict s, size_t bs, const
59025903
__m128bh xd = m128bh(_mm_cvtepu16_epi32(_mm_set_epi64x(0, x_delta)));
59035904
__m128bh yd = m128bh(_mm_cvtepu16_epi32(_mm_set_epi64x(0, y_delta)));
59045905

5906+
// Computes product of delta values from four corresponding blocks
59055907
__m256 d = _mm256_castps128_ps256(_mm_dpbf16_ps(zerovec, xd, yd));
59065908
d = _mm256_permute2f128_ps(d ,d, 0);
59075909

ggml/src/llamafile/sgemm.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -981,6 +981,7 @@ class tinyBLAS_Q0_B16_AVX {
981981
}
982982

983983
#if defined(__AVX512BF16__)
984+
// Templated functions for gemm of dimesnions 4xN
984985
template <int RN>
985986
NOINLINE void gemm4xN(int64_t m0, int64_t m, int64_t n0, int64_t n) {
986987
int64_t ytiles = (m - m0) / 4;
@@ -1005,6 +1006,7 @@ class tinyBLAS_Q0_B16_AVX {
10051006
__m256i avec3 = load(A + lda * (ii + 3) + l);
10061007
for (int64_t j = 0; j < RN; ++j) {
10071008
__m128bh db = m128bh(_mm_set1_epi16(B[ldb * (jj + j) + l].d));
1009+
// Computation of product of delta values for four blocks
10081010
__m256 dvec = _mm256_castps128_ps256(_mm_dpbf16_ps(zerovec, da, db));
10091011
dvec = _mm256_permute2f128_ps(dvec ,dvec, 0);
10101012
Cv[j][0] = madd(_mm256_shuffle_ps(dvec, dvec, 0),
@@ -1056,7 +1058,8 @@ class tinyBLAS_Q0_B16_AVX {
10561058
__m256i bvec3 = load(B + ldb * (jj + 3) + l);
10571059
for (int64_t i = 0; i < RM; ++i) {
10581060
__m128bh da = m128bh(_mm_set1_epi16((A[lda * (ii + i) + l].d)));
1059-
__m256 dvec = _mm256_castps128_ps256(_mm_dpbf16_ps(zerovec, da, db));
1061+
// Computation of product of delta values for four blocks
1062+
__m256 dvec = _mm256_castps128_ps256(_mm_dpbf16_ps(zerovec, da, db));
10601063
dvec = _mm256_permute2f128_ps(dvec ,dvec, 0);
10611064
Cv[0][i] = madd(_mm256_shuffle_ps(dvec, dvec, 0),
10621065
updot(_mm256_sign_epi8(load(A + lda * (ii + i) + l),

0 commit comments

Comments
 (0)