Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
ollama
Commits
7ca9605f
Unverified
Commit
7ca9605f
authored
May 30, 2024
by
Jeffrey Morgan
Committed by
GitHub
May 30, 2024
Browse files
speed up tests by only building static lib (#4740)
parent
eb2c443a
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
46 additions
and
41 deletions
+46
-41
.github/workflows/test.yaml
.github/workflows/test.yaml
+2
-0
llm/generate/gen_darwin.sh
llm/generate/gen_darwin.sh
+44
-41
No files found.
.github/workflows/test.yaml
View file @
7ca9605f
...
@@ -287,6 +287,8 @@ jobs:
...
@@ -287,6 +287,8 @@ jobs:
GOARCH
:
${{ matrix.arch }}
GOARCH
:
${{ matrix.arch }}
CGO_ENABLED
:
'
1'
CGO_ENABLED
:
'
1'
OLLAMA_CPU_TARGET
:
'
static'
OLLAMA_CPU_TARGET
:
'
static'
OLLAMA_SKIP_CPU_GENERATE
:
'
1'
OLLAMA_SKIP_METAL_GENERATE
:
'
1'
steps
:
steps
:
-
uses
:
actions/checkout@v4
-
uses
:
actions/checkout@v4
with
:
with
:
...
...
llm/generate/gen_darwin.sh
View file @
7ca9605f
...
@@ -32,42 +32,43 @@ case "${GOARCH}" in
...
@@ -32,42 +32,43 @@ case "${GOARCH}" in
echo
"Building static library"
echo
"Building static library"
build
build
if
[
-z
"
$OLLAMA_SKIP_CPU_GENERATE
"
]
;
then
#
# CPU first for the default library, set up as lowest common denominator for maximum compatibility (including Rosetta)
#
init_vars
CMAKE_DEFS
=
"
${
COMMON_CPU_DEFS
}
-DLLAMA_ACCELERATE=off -DLLAMA_AVX=off -DLLAMA_AVX2=off -DLLAMA_AVX512=off -DLLAMA_FMA=off -DLLAMA_F16C=off
${
CMAKE_DEFS
}
"
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/cpu"
echo
"Building LCD CPU"
build
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
compress
#
#
# CPU first for the default library, set up as lowest common denominator for maximum compatibility (including Rosetta)
# ~2011 CPU Dynamic library with more capabilities turned on to optimize performance
#
# Approximately 400% faster than LCD on same CPU
init_vars
#
CMAKE_DEFS
=
"
${
COMMON_CPU_DEFS
}
-DLLAMA_ACCELERATE=off -DLLAMA_AVX=off -DLLAMA_AVX2=off -DLLAMA_AVX512=off -DLLAMA_FMA=off -DLLAMA_F16C=off
${
CMAKE_DEFS
}
"
init_vars
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/cpu"
CMAKE_DEFS
=
"
${
COMMON_CPU_DEFS
}
-DLLAMA_ACCELERATE=off -DLLAMA_AVX=on -DLLAMA_AVX2=off -DLLAMA_AVX512=off -DLLAMA_FMA=off -DLLAMA_F16C=off
${
CMAKE_DEFS
}
"
echo
"Building LCD CPU"
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/cpu_avx"
build
echo
"Building AVX CPU"
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
build
compress
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
compress
#
# ~2011 CPU Dynamic library with more capabilities turned on to optimize performance
# Approximately 400% faster than LCD on same CPU
#
init_vars
CMAKE_DEFS
=
"
${
COMMON_CPU_DEFS
}
-DLLAMA_ACCELERATE=off -DLLAMA_AVX=on -DLLAMA_AVX2=off -DLLAMA_AVX512=off -DLLAMA_FMA=off -DLLAMA_F16C=off
${
CMAKE_DEFS
}
"
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/cpu_avx"
echo
"Building AVX CPU"
build
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
compress
#
#
# ~2013 CPU Dynamic library
# ~2013 CPU Dynamic library
# Approximately 10% faster than AVX on same CPU
# Approximately 10% faster than AVX on same CPU
#
#
init_vars
init_vars
CMAKE_DEFS
=
"
${
COMMON_CPU_DEFS
}
-DLLAMA_ACCELERATE=on -DLLAMA_AVX=on -DLLAMA_AVX2=on -DLLAMA_AVX512=off -DLLAMA_FMA=on -DLLAMA_F16C=on
${
CMAKE_DEFS
}
"
CMAKE_DEFS
=
"
${
COMMON_CPU_DEFS
}
-DLLAMA_ACCELERATE=on -DLLAMA_AVX=on -DLLAMA_AVX2=on -DLLAMA_AVX512=off -DLLAMA_FMA=on -DLLAMA_F16C=on
${
CMAKE_DEFS
}
"
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/cpu_avx2"
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/cpu_avx2"
echo
"Building AVX2 CPU"
echo
"Building AVX2 CPU"
EXTRA_LIBS
=
"
${
EXTRA_LIBS
}
-framework Accelerate -framework Foundation"
EXTRA_LIBS
=
"
${
EXTRA_LIBS
}
-framework Accelerate -framework Foundation"
build
build
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
compress
compress
fi
;;
;;
"arm64"
)
"arm64"
)
...
@@ -79,13 +80,15 @@ case "${GOARCH}" in
...
@@ -79,13 +80,15 @@ case "${GOARCH}" in
echo
"Building static library"
echo
"Building static library"
build
build
init_vars
if
[
-z
"
$OLLAMA_SKIP_METAL_GENERATE
"
]
;
then
CMAKE_DEFS
=
"
${
COMMON_DARWIN_DEFS
}
-DLLAMA_ACCELERATE=on -DCMAKE_SYSTEM_PROCESSOR=
${
ARCH
}
-DCMAKE_OSX_ARCHITECTURES=
${
ARCH
}
-DLLAMA_METAL=on
${
CMAKE_DEFS
}
"
init_vars
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/metal"
CMAKE_DEFS
=
"
${
COMMON_DARWIN_DEFS
}
-DLLAMA_ACCELERATE=on -DCMAKE_SYSTEM_PROCESSOR=
${
ARCH
}
-DCMAKE_OSX_ARCHITECTURES=
${
ARCH
}
-DLLAMA_METAL=on
${
CMAKE_DEFS
}
"
EXTRA_LIBS
=
"
${
EXTRA_LIBS
}
-framework Accelerate -framework Foundation -framework Metal -framework MetalKit -framework MetalPerformanceShaders"
BUILD_DIR
=
"../build/darwin/
${
ARCH
}
/metal"
build
EXTRA_LIBS
=
"
${
EXTRA_LIBS
}
-framework Accelerate -framework Foundation -framework Metal -framework MetalKit -framework MetalPerformanceShaders"
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
build
compress
sign
${
BUILD_DIR
}
/bin/ollama_llama_server
compress
fi
;;
;;
*
)
*
)
echo
"GOARCH must be set"
echo
"GOARCH must be set"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment