Update Makefile
This commit is contained in:
parent
038ed63195
commit
495c898171
2 changed files with 14 additions and 9 deletions
13
Makefile
13
Makefile
|
@ -220,11 +220,6 @@ else ifdef LLAMA_CUDA_DMMV_Y
|
||||||
else
|
else
|
||||||
NVCCFLAGS += -DGGML_CUDA_MMV_Y=1
|
NVCCFLAGS += -DGGML_CUDA_MMV_Y=1
|
||||||
endif # LLAMA_CUDA_MMV_Y
|
endif # LLAMA_CUDA_MMV_Y
|
||||||
ifdef LLAMA_CUDA_MMQ_Y
|
|
||||||
NVCCFLAGS += -DGGML_CUDA_MMQ_Y=$(LLAMA_CUDA_MMQ_Y)
|
|
||||||
else
|
|
||||||
NVCCFLAGS += -DGGML_CUDA_MMQ_Y=64
|
|
||||||
endif # LLAMA_CUDA_MMQ_Y
|
|
||||||
ifdef LLAMA_CUDA_DMMV_F16
|
ifdef LLAMA_CUDA_DMMV_F16
|
||||||
NVCCFLAGS += -DGGML_CUDA_DMMV_F16
|
NVCCFLAGS += -DGGML_CUDA_DMMV_F16
|
||||||
endif # LLAMA_CUDA_DMMV_F16
|
endif # LLAMA_CUDA_DMMV_F16
|
||||||
|
@ -233,6 +228,14 @@ ifdef LLAMA_CUDA_KQUANTS_ITER
|
||||||
else
|
else
|
||||||
NVCCFLAGS += -DK_QUANTS_PER_ITERATION=2
|
NVCCFLAGS += -DK_QUANTS_PER_ITERATION=2
|
||||||
endif
|
endif
|
||||||
|
ifdef LLAMA_CUDA_MMQ_Y
|
||||||
|
NVCCFLAGS += -DGGML_CUDA_MMQ_Y=$(LLAMA_CUDA_MMQ_Y)
|
||||||
|
else
|
||||||
|
NVCCFLAGS += -DGGML_CUDA_MMQ_Y=64
|
||||||
|
endif # LLAMA_CUDA_MMQ_Y
|
||||||
|
ifdef LLAMA_CUDA_CUBLAS
|
||||||
|
NVCCFLAGS += -DGGML_CUDA_CUBLAS
|
||||||
|
endif # LLAMA_CUDA_CUBLAS
|
||||||
ifdef LLAMA_CUDA_CCBIN
|
ifdef LLAMA_CUDA_CCBIN
|
||||||
NVCCFLAGS += -ccbin $(LLAMA_CUDA_CCBIN)
|
NVCCFLAGS += -ccbin $(LLAMA_CUDA_CCBIN)
|
||||||
endif
|
endif
|
||||||
|
|
10
ggml-cuda.cu
10
ggml-cuda.cu
|
@ -4655,10 +4655,12 @@ void ggml_cuda_mul_mat(const ggml_tensor * src0, const ggml_tensor * src1, ggml_
|
||||||
if (src1->ne[1] == 1 && src0->ne[0] % GGML_CUDA_DMMV_X == 0) {
|
if (src1->ne[1] == 1 && src0->ne[0] % GGML_CUDA_DMMV_X == 0) {
|
||||||
ggml_cuda_op(src0, src1, dst, ggml_cuda_op_mul_mat_vec, false, false);
|
ggml_cuda_op(src0, src1, dst, ggml_cuda_op_mul_mat_vec, false, false);
|
||||||
} else {
|
} else {
|
||||||
if (src0->type == GGML_TYPE_Q4_0 || src0->type == GGML_TYPE_Q4_1 || src0->type == GGML_TYPE_Q5_0 ||
|
#ifdef GGML_CUDA_CUBLAS
|
||||||
src0->type == GGML_TYPE_Q5_1 || src0->type == GGML_TYPE_Q8_0 ||
|
const bool use_mul_mat_q = false;
|
||||||
src0->type == GGML_TYPE_Q2_K || src0->type == GGML_TYPE_Q3_K || src0->type == GGML_TYPE_Q4_K ||
|
#else
|
||||||
src0->type == GGML_TYPE_Q5_K || src0->type == GGML_TYPE_Q6_K) {
|
const bool use_mul_mat_q = ggml_is_quantized(src0->type);
|
||||||
|
#endif // GGML_CUDA_CUBLAS
|
||||||
|
if (use_mul_mat_q) {
|
||||||
ggml_cuda_op(src0, src1, dst, ggml_cuda_op_mul_mat_q, false, false);
|
ggml_cuda_op(src0, src1, dst, ggml_cuda_op_mul_mat_q, false, false);
|
||||||
} else {
|
} else {
|
||||||
ggml_cuda_op(src0, src1, dst, ggml_cuda_op_mul_mat_cublas, true, false);
|
ggml_cuda_op(src0, src1, dst, ggml_cuda_op_mul_mat_cublas, true, false);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue