diff --git a/CMakeLists.txt b/CMakeLists.txt index 3659279e2..410fc174a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -676,6 +676,8 @@ add_library(ggml OBJECT ${GGML_SOURCES_EXTRA} ${GGML_HEADERS_EXTRA} ) +set_property(TARGET ggml PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE) + target_include_directories(ggml PUBLIC . ${LLAMA_EXTRA_INCLUDES}) target_compile_features(ggml PUBLIC c_std_11) # don't bump target_link_libraries(ggml PUBLIC Threads::Threads ${LLAMA_EXTRA_LIBS}) diff --git a/Makefile b/Makefile index c53c1e726..048ad5d4e 100644 --- a/Makefile +++ b/Makefile @@ -120,12 +120,12 @@ MK_CXXFLAGS = -std=c++11 -fPIC # -Ofast tends to produce faster code, but may not be available for some compilers. ifdef LLAMA_FAST -MK_CFLAGS += -Ofast -MK_HOST_CXXFLAGS += -Ofast -MK_CUDA_CXXFLAGS += -O3 +MK_CFLAGS += -flto -Ofast +MK_HOST_CXXFLAGS += -flto -Ofast +MK_CUDA_CXXFLAGS += -flto -O3 else -MK_CFLAGS += -O3 -MK_CXXFLAGS += -O3 +MK_CFLAGS += -flto -O3 +MK_CXXFLAGS += -flto -O3 endif # clock_gettime came in POSIX.1b (1993)