Skip to content

Commit e9c33ba

Browse files
committed
Apply fixes suggested to build on windows
Issue: ggml-org#22
1 parent 6b2cb63 commit e9c33ba

File tree

5 files changed

+17
-12
lines changed

5 files changed

+17
-12
lines changed

ggml.c

+10-10
Original file line numberDiff line numberDiff line change
@@ -407,8 +407,8 @@ void quantize_row_q4_0(const float * restrict x, void * restrict y, int k) {
407407
const int nb = k / QK;
408408
const size_t bs = sizeof(float) + QK/2;
409409

410-
uint8_t * restrict pd = (uint8_t *) (y + 0*bs);
411-
uint8_t * restrict pb = (uint8_t *) (y + 0*bs + sizeof(float));
410+
uint8_t * restrict pd = ((uint8_t *)y + 0*bs);
411+
uint8_t * restrict pb = ((uint8_t *)y + 0*bs + sizeof(float));
412412

413413
uint8_t pp[QK/2];
414414

@@ -654,8 +654,8 @@ void dequantize_row_q4_0(const void * restrict x, float * restrict y, int k) {
654654
const int nb = k / QK;
655655
const size_t bs = sizeof(float) + QK/2;
656656

657-
const uint8_t * restrict pd = (const uint8_t *) (x + 0*bs);
658-
const uint8_t * restrict pb = (const uint8_t *) (x + 0*bs + sizeof(float));
657+
const uint8_t * restrict pd = ((const uint8_t *)x + 0*bs);
658+
const uint8_t * restrict pb = ((const uint8_t *)x + 0*bs + sizeof(float));
659659

660660
// scalar
661661
for (int i = 0; i < nb; i++) {
@@ -1301,11 +1301,11 @@ inline static void ggml_vec_dot_q4_0(const int n, float * restrict s, const void
13011301

13021302
const size_t bs = sizeof(float) + QK/2;
13031303

1304-
const uint8_t * restrict pd0 = (const uint8_t *) (x + 0*bs);
1305-
const uint8_t * restrict pd1 = (const uint8_t *) (y + 0*bs);
1304+
const uint8_t * restrict pd0 = ((const uint8_t *)x + 0*bs);
1305+
const uint8_t * restrict pd1 = ((const uint8_t *)y + 0*bs);
13061306

1307-
const uint8_t * restrict pb0 = (const uint8_t *) (x + 0*bs + sizeof(float));
1308-
const uint8_t * restrict pb1 = (const uint8_t *) (y + 0*bs + sizeof(float));
1307+
const uint8_t * restrict pb0 = ((const uint8_t *)x + 0*bs + sizeof(float));
1308+
const uint8_t * restrict pb1 = ((const uint8_t *)y + 0*bs + sizeof(float));
13091309

13101310
float sumf = 0.0;
13111311

@@ -1731,8 +1731,8 @@ inline static void ggml_vec_mad_q4_0(const int n, float * restrict y, void * res
17311731
const int nb = n / QK;
17321732
const size_t bs = sizeof(float) + QK/2;
17331733

1734-
const uint8_t * restrict pd = (const uint8_t *) (x + 0*bs);
1735-
const uint8_t * restrict pb = (const uint8_t *) (x + 0*bs + sizeof(float));
1734+
const uint8_t * restrict pd = ((const uint8_t *)x + 0*bs);
1735+
const uint8_t * restrict pb = ((const uint8_t *)x + 0*bs + sizeof(float));
17361736

17371737
#if __ARM_NEON
17381738
#if QK == 32

ggml.h

+2
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,8 @@ extern "C" {
183183
#define GGML_MAX_CONTEXTS 64
184184
#define GGML_MAX_OPT 4
185185

186+
#define QK 32
187+
186188
#ifdef __ARM_NEON
187189
// we use the built-in 16-bit float type
188190
typedef __fp16 ggml_fp16_t;

main.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -733,6 +733,7 @@ bool llama_eval(
733733
}
734734

735735
int main(int argc, char ** argv) {
736+
ggml_time_init();
736737
const int64_t t_main_start_us = ggml_time_us();
737738

738739
gpt_params params;

quantize.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,7 @@ bool llama_model_quantize(const std::string & fname_inp, const std::string & fna
289289
// ./llama-quantize models/llama/ggml-model.bin models/llama/ggml-model-quant.bin type
290290
//
291291
int main(int argc, char ** argv) {
292+
ggml_time_init();
292293
if (argc != 4) {
293294
fprintf(stderr, "usage: %s model-f32.bin model-quant.bin type\n", argv[0]);
294295
fprintf(stderr, " type = 2 - q4_0\n");

utils.cpp

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
#include "utils.h"
2+
#define QK 32
23

34
#include <cassert>
45
#include <cstring>
@@ -453,7 +454,7 @@ size_t ggml_quantize_q4_0(float * src, void * dst, int n, int k, int qk, int64_t
453454

454455
assert(k % qk == 0);
455456

456-
uint8_t pp[qk/2];
457+
uint8_t pp[QK/2];
457458

458459
char * pdst = (char *) dst;
459460

@@ -507,7 +508,7 @@ size_t ggml_quantize_q4_1(float * src, void * dst, int n, int k, int qk, int64_t
507508

508509
assert(k % qk == 0);
509510

510-
uint8_t pp[qk/2];
511+
uint8_t pp[QK/2];
511512

512513
char * pdst = (char *) dst;
513514

0 commit comments

Comments
 (0)