1
1
INCLUDE_PATH := $(abspath ./)
2
2
LIBRARY_PATH := $(abspath ./)
3
- CMAKEFLAGS =${TRANSFORMERS_CMAKEFLAGS}
3
+ CMAKE_ARGS =${TRANSFORMERS_CMAKE_ARGS}
4
+ EXTRA_OBJS =
4
5
5
6
ifndef UNAME_S
6
7
UNAME_S := $(shell uname -s)
@@ -122,6 +123,11 @@ ifneq ($(filter armv8%,$(UNAME_M)),)
122
123
CFLAGS += -mfp16-format=ieee -mno-unaligned-access
123
124
endif
124
125
126
+ ifeq ($(BUILD_TYPE ) ,cublas)
127
+ CMAKE_ARGS += -DGGML_CUBLAS=ON
128
+ EXTRA_OBJS += ggml-cuda.o
129
+ endif
130
+
125
131
#
126
132
# Print build information
127
133
#
@@ -133,15 +139,18 @@ $(info I UNAME_M: $(UNAME_M))
133
139
$(info I CFLAGS : $(CFLAGS ) )
134
140
$(info I CXXFLAGS : $(CXXFLAGS ) )
135
141
$(info I LDFLAGS : $(LDFLAGS ) )
136
- $(info I CMAKEFLAGS : $(CMAKEFLAGS ) )
142
+ $(info I CMAKE_ARGS : $(CMAKE_ARGS ) )
137
143
$(info I CC : $(CCV ) )
138
144
$(info I CXX : $(CXXV ) )
139
145
$(info )
140
146
141
147
142
148
ggml.o :
143
149
mkdir build
144
- cd build && cmake ../ggml.cpp $(CMAKEFLAGS ) && make VERBOSE=1 ggml && cp -rf src/CMakeFiles/ggml.dir/ggml.c.o ../ggml.o
150
+ cd build && cmake ../ggml.cpp $(CMAKE_ARGS ) && make VERBOSE=1 ggml && cp -rf src/CMakeFiles/ggml.dir/ggml.c.o ../ggml.o
151
+ @if [ " $( BUILD_TYPE) " = " cublas" ]; then \
152
+ cp -rf build/src/CMakeFiles/ggml.dir/ggml-cuda.cu.o ggml-cuda.o ; \
153
+ fi
145
154
146
155
generic-ggml.o :
147
156
$(CC ) $(CFLAGS ) -c ggml.cpp/src/ggml.c -o ggml.o
@@ -194,7 +203,7 @@ prepare:
194
203
@find ./ggml.cpp/examples/starcoder -type f -name "*.cpp" -exec sed -i'' -e 's/int main/int main_starcoder/g' {} +
195
204
196
205
libtransformers.a : prepare starcoder.o falcon.o gptj.o mpt.o gpt2.o replit.o gptneox.o ggml.o dolly.o common-ggml.o common.o
197
- ar src libtransformers.a replit.o gptj.o mpt.o gptneox.o starcoder.o gpt2.o dolly.o falcon.o ggml.o common-ggml.o common.o
206
+ ar src libtransformers.a replit.o gptj.o mpt.o gptneox.o starcoder.o gpt2.o dolly.o falcon.o ggml.o common-ggml.o common.o ${EXTRA_OBJS}
198
207
199
208
example :
200
209
@C_INCLUDE_PATH=${INCLUDE_PATH} LIBRARY_PATH=${LIBRARY_PATH} go build -o example -x ./examples
0 commit comments