@@ -523,11 +523,11 @@ ifndef GGML_NO_ACCELERATE
523
523
# Mac OS - include Accelerate framework.
524
524
# `-framework Accelerate` works both with Apple Silicon and Mac Intel
525
525
ifeq ($(UNAME_S),Darwin)
526
- MK_CPPFLAGS += -DGGML_USE_ACCELERATE -DGGML_USE_BLAS
526
+ MK_CPPFLAGS += -DGGML_USE_ACCELERATE -DGGML_USE_BLAS -DGGML_BLAS_USE_ACCELERATE
527
527
MK_CPPFLAGS += -DACCELERATE_NEW_LAPACK
528
528
MK_CPPFLAGS += -DACCELERATE_LAPACK_ILP64
529
529
MK_LDFLAGS += -framework Accelerate
530
- OBJ_GGML += ggml/src/ggml-blas.o
530
+ OBJ_GGML += ggml/src/ggml-blas/ggml-blas .o
531
531
endif
532
532
endif # GGML_NO_ACCELERATE
533
533
@@ -552,36 +552,36 @@ ifdef GGML_OPENBLAS
552
552
MK_CPPFLAGS += -DGGML_USE_BLAS $(shell pkg-config --cflags-only-I openblas)
553
553
MK_CFLAGS += $(shell pkg-config --cflags-only-other openblas)
554
554
MK_LDFLAGS += $(shell pkg-config --libs openblas)
555
- OBJ_GGML += ggml/src/ggml-blas.o
555
+ OBJ_GGML += ggml/src/ggml-blas/ggml-blas .o
556
556
endif # GGML_OPENBLAS
557
557
558
558
ifdef GGML_OPENBLAS64
559
559
MK_CPPFLAGS += -DGGML_USE_BLAS $(shell pkg-config --cflags-only-I openblas64)
560
560
MK_CFLAGS += $(shell pkg-config --cflags-only-other openblas64)
561
561
MK_LDFLAGS += $(shell pkg-config --libs openblas64)
562
- OBJ_GGML += ggml/ src/ggml-blas.o
562
+ OBJ_GGML += src/ggml-blas /ggml-blas.o
563
563
endif # GGML_OPENBLAS64
564
564
565
565
ifdef GGML_BLIS
566
566
MK_CPPFLAGS += -DGGML_USE_BLAS -DGGML_BLAS_USE_BLIS -I/usr/local/include/blis -I/usr/include/blis
567
567
MK_LDFLAGS += -lblis -L/usr/local/lib
568
- OBJ_GGML += ggml/ src/ggml-blas.o
568
+ OBJ_GGML += src/ggml-blas /ggml-blas.o
569
569
endif # GGML_BLIS
570
570
571
571
ifdef GGML_NVPL
572
572
MK_CPPFLAGS += -DGGML_USE_BLAS -DGGML_BLAS_USE_NVPL -DNVPL_ILP64 -I/usr/local/include/nvpl_blas -I/usr/include/nvpl_blas
573
573
MK_LDFLAGS += -L/usr/local/lib -lnvpl_blas_core -lnvpl_blas_ilp64_gomp
574
- OBJ_GGML += ggml/ src/ggml-blas.o
574
+ OBJ_GGML += src/ggml-blas /ggml-blas.o
575
575
endif # GGML_NVPL
576
576
577
577
ifndef GGML_NO_LLAMAFILE
578
578
MK_CPPFLAGS += -DGGML_USE_LLAMAFILE
579
- OBJ_GGML += ggml/src/llamafile/sgemm.o
579
+ OBJ_GGML += ggml/src/ggml-cpu/ llamafile/sgemm.o
580
580
endif
581
581
582
582
ifndef GGML_NO_AMX
583
583
MK_CPPFLAGS += -DGGML_USE_AMX
584
- OBJ_GGML += ggml/src/ggml-amx.o ggml/src/ggml-amx/mmq.o
584
+ OBJ_GGML += ggml/src/ggml-amx/ggml-amx .o ggml/src/ggml-amx/mmq.o
585
585
endif
586
586
587
587
ifdef GGML_RPC
@@ -623,7 +623,7 @@ ifdef GGML_CUDA
623
623
MK_NVCCFLAGS += -use_fast_math
624
624
endif # GGML_MUSA
625
625
626
- OBJ_GGML += ggml/src/ggml-cuda.o
626
+ OBJ_GGML += ggml/src/ggml-cuda/ggml-cuda .o
627
627
OBJ_GGML += $(patsubst %.cu,%.o,$(wildcard ggml/src/ggml-cuda/*.cu))
628
628
OBJ_GGML += $(OBJ_CUDA_TMPL)
629
629
@@ -742,8 +742,8 @@ ggml/src/ggml-cuda/%.o: \
742
742
ggml/src/ggml-cuda/common.cuh
743
743
$(NVCC_COMPILE )
744
744
745
- ggml/src/ggml-cuda.o : \
746
- ggml/src/ggml-cuda.cu \
745
+ ggml/src/ggml-cuda/ggml-cuda .o : \
746
+ ggml/src/ggml-cuda/ggml-cuda .cu \
747
747
ggml/include/ggml-cuda.h \
748
748
ggml/include/ggml.h \
749
749
ggml/include/ggml-backend.h \
@@ -852,12 +852,12 @@ ifdef GGML_CUDA_NO_PEER_COPY
852
852
HIPFLAGS += -DGGML_CUDA_NO_PEER_COPY
853
853
endif # GGML_CUDA_NO_PEER_COPY
854
854
855
- OBJ_GGML += ggml/src/ggml-cuda.o
855
+ OBJ_GGML += ggml/src/ggml-cuda/ggml-cuda .o
856
856
OBJ_GGML += $(patsubst %.cu,%.o,$(wildcard ggml/src/ggml-cuda/*.cu))
857
857
OBJ_GGML += $(OBJ_CUDA_TMPL)
858
858
859
- ggml/src/ggml-cuda.o : \
860
- ggml/src/ggml-cuda.cu \
859
+ ggml/src/ggml-cuda/ggml-cuda .o : \
860
+ ggml/src/ggml-cuda/ggml-cuda .cu \
861
861
ggml/include/ggml-cuda.h \
862
862
ggml/include/ggml.h \
863
863
ggml/include/ggml-backend.h \
@@ -877,7 +877,7 @@ endif # GGML_HIPBLAS
877
877
ifdef GGML_METAL
878
878
MK_CPPFLAGS += -DGGML_USE_METAL
879
879
MK_LDFLAGS += -framework Foundation -framework Metal -framework MetalKit
880
- OBJ_GGML += ggml/src/ggml-metal.o
880
+ OBJ_GGML += ggml/src/ggml-metal/ggml-metal .o
881
881
882
882
ifdef GGML_METAL_USE_BF16
883
883
MK_CPPFLAGS += -DGGML_METAL_USE_BF16
@@ -892,18 +892,18 @@ endif
892
892
endif # GGML_METAL
893
893
894
894
ifdef GGML_METAL
895
- ggml/src/ggml-metal.o : \
896
- ggml/src/ggml-metal.m \
895
+ ggml/src/ggml-metal/ggml-metal .o : \
896
+ ggml/src/ggml-metal/ggml-metal .m \
897
897
ggml/include/ggml-metal.h \
898
898
ggml/include/ggml.h
899
899
$(CC ) $(CFLAGS ) -c $< -o $@
900
900
901
901
ifdef GGML_METAL_EMBED_LIBRARY
902
902
ggml/src/ggml-metal-embed.o : \
903
- ggml/src/ggml-metal.metal \
903
+ ggml/src/ggml-metal/ggml-metal .metal \
904
904
ggml/src/ggml-common.h
905
905
@echo " Embedding Metal library"
906
- @sed -e ' /#include "ggml-common.h"/r ggml/src/ggml-common.h' -e ' /#include "ggml-common.h"/d' < ggml/src/ggml-metal.metal > ggml/src/ggml-metal-embed.metal
906
+ @sed -e ' /#include "ggml-common.h"/r ggml/src/ggml-common.h' -e ' /#include "ggml-common.h"/d' < ggml/src/ggml-metal/ggml-metal .metal > ggml/src/ggml-metal /ggml-metal-embed.metal
907
907
$(eval TEMP_ASSEMBLY=$(shell mktemp -d) )
908
908
@echo " .section __DATA, __ggml_metallib" > $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
909
909
@echo " .globl _ggml_metallib_start" >> $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
@@ -919,11 +919,16 @@ endif # GGML_METAL
919
919
920
920
OBJ_GGML += \
921
921
ggml/src/ggml.o \
922
- ggml/src/ggml-cpu .o \
922
+ ggml/src/ggml-aarch64 .o \
923
923
ggml/src/ggml-alloc.o \
924
924
ggml/src/ggml-backend.o \
925
+ ggml/src/ggml-backend-reg.o \
925
926
ggml/src/ggml-quants.o \
926
- ggml/src/ggml-aarch64.o
927
+ ggml/src/ggml-threading.o \
928
+ ggml/src/ggml-cpu/ggml-cpu.o \
929
+ ggml/src/ggml-cpu/ggml-cpu-cpp.o \
930
+ ggml/src/ggml-cpu/ggml-cpu-aarch64.o \
931
+ ggml/src/ggml-cpu/ggml-cpu-quants.o
927
932
928
933
OBJ_LLAMA = \
929
934
src/llama.o \
@@ -1051,12 +1056,23 @@ ggml/src/ggml.o: \
1051
1056
ggml/include/ggml.h
1052
1057
$(CC ) $(CFLAGS ) -c $< -o $@
1053
1058
1054
- ggml/src/ggml-cpu.o : \
1055
- ggml/src/ggml-cpu.c \
1059
+ ggml/src/ggml-threading.o : \
1060
+ ggml/src/ggml-threading.cpp \
1061
+ ggml/include/ggml.h
1062
+ $(CXX ) $(XXCFLAGS ) -c $< -o $@
1063
+
1064
+ ggml/src/ggml-cpu/ggml-cpu.o : \
1065
+ ggml/src/ggml-cpu/ggml-cpu.c \
1056
1066
ggml/include/ggml.h \
1057
1067
ggml/src/ggml-common.h
1058
1068
$(CC ) $(CFLAGS ) -c $< -o $@
1059
1069
1070
+ ggml/src/ggml-cpu/ggml-cpu-cpp.o : \
1071
+ ggml/src/ggml-cpu/ggml-cpu.cpp \
1072
+ ggml/include/ggml.h \
1073
+ ggml/src/ggml-common.h
1074
+ $(CXX ) $(CXXFLAGS ) -c $< -o $@
1075
+
1060
1076
ggml/src/ggml-alloc.o : \
1061
1077
ggml/src/ggml-alloc.c \
1062
1078
ggml/include/ggml.h \
@@ -1084,22 +1100,22 @@ ggml/src/ggml-aarch64.o: \
1084
1100
ggml/src/ggml-common.h
1085
1101
$(CC ) $(CFLAGS ) -c $< -o $@
1086
1102
1087
- ggml/src/ggml-blas.o : \
1088
- ggml/src/ggml-blas.cpp \
1103
+ ggml/src/ggml-blas/ggml-blas .o : \
1104
+ ggml/src/ggml-blas/ggml-blas .cpp \
1089
1105
ggml/include/ggml-blas.h
1090
1106
$(CXX ) $(CXXFLAGS ) -c $< -o $@
1091
1107
1092
1108
ifndef GGML_NO_LLAMAFILE
1093
- ggml/src/llamafile/sgemm.o : \
1094
- ggml/src/llamafile/sgemm.cpp \
1095
- ggml/src/llamafile/sgemm.h \
1109
+ ggml/src/ggml-cpu/ llamafile/sgemm.o : \
1110
+ ggml/src/ggml-cpu/ llamafile/sgemm.cpp \
1111
+ ggml/src/ggml-cpu/ llamafile/sgemm.h \
1096
1112
ggml/include/ggml.h
1097
- $(CXX ) $(CXXFLAGS ) -c $< -o $@
1113
+ $(CXX ) $(CXXFLAGS ) -c $< -o $@ -I ggml/src -I ggml/src/ggml-cpu
1098
1114
endif # GGML_NO_LLAMAFILE
1099
1115
1100
1116
ifndef GGML_NO_AMX
1101
- ggml/src/ggml-amx.o : \
1102
- ggml/src/ggml-amx.cpp \
1117
+ ggml/src/ggml-amx/ggml-amx .o : \
1118
+ ggml/src/ggml-amx/ggml-amx .cpp \
1103
1119
ggml/include/ggml-amx.h
1104
1120
$(CXX ) $(CXXFLAGS ) -c $< -o $@
1105
1121
@@ -1250,10 +1266,11 @@ clean:
1250
1266
rm -rvf ggml/* .a
1251
1267
rm -rvf ggml/* .dll
1252
1268
rm -rvf ggml/* .so
1253
- rm -vrf ggml/src/* .o
1254
- rm -rvf ggml/src/llamafile/* .o
1269
+ rm -rvf ggml/src/* .o
1270
+ rm -rvf ggml/src/ggml-cpu/* .o
1271
+ rm -rvf ggml/src/ggml-cpu/llamafile/* .o
1255
1272
rm -rvf common/build-info.cpp
1256
- rm -vrf ggml/src/ggml-metal-embed.metal
1273
+ rm -vrf ggml/src/ggml-metal/ggml-metal -embed.metal
1257
1274
rm -vrf ggml/src/ggml-cuda/* .o
1258
1275
rm -vrf ggml/src/ggml-cuda/template-instances/* .o
1259
1276
rm -vrf ggml/src/ggml-amx/* .o
0 commit comments