Perf: optimize performance with ARM features

This commit is contained in:
Han Yin 2025-04-07 14:24:34 -07:00
parent bb5b824208
commit 1b0754c0f5
1 changed files with 13 additions and 6 deletions

View File

@ -7,6 +7,8 @@ android {
namespace = "android.llama.cpp" namespace = "android.llama.cpp"
compileSdk = 35 compileSdk = 35
ndkVersion = "29.0.13113456 rc1"
defaultConfig { defaultConfig {
minSdk = 33 minSdk = 33
@ -14,15 +16,20 @@ android {
consumerProguardFiles("consumer-rules.pro") consumerProguardFiles("consumer-rules.pro")
ndk { ndk {
// Add NDK properties if wanted, e.g. abiFilters += listOf("arm64-v8a")
// abiFilters += listOf("arm64-v8a")
} }
externalNativeBuild { externalNativeBuild {
cmake { cmake {
arguments += "-DLLAMA_CURL=OFF"
arguments += "-DLLAMA_BUILD_COMMON=ON"
arguments += "-DGGML_LLAMAFILE=OFF"
arguments += "-DCMAKE_BUILD_TYPE=Release" arguments += "-DCMAKE_BUILD_TYPE=Release"
arguments += "-DCMAKE_C_FLAGS=\"-march=armv8.7a+dotprod+i8mm+sve\""
arguments += "-DCMAKE_CXX_FLAGS=\"-march=armv8.7a+dotprod+i8mm+sve\""
arguments += "-DGGML_CPU_KLEIDIAI=ON"
arguments += "-DGGML_LLAMAFILE=OFF"
arguments += "-DLLAMA_BUILD_COMMON=ON"
arguments += "-DLLAMA_CURL=OFF"
cppFlags += listOf() cppFlags += listOf()
arguments += listOf() arguments += listOf()
@ -43,7 +50,7 @@ android {
externalNativeBuild { externalNativeBuild {
cmake { cmake {
path("src/main/cpp/CMakeLists.txt") path("src/main/cpp/CMakeLists.txt")
version = "3.22.1" version = "3.31.6"
} }
} }
compileOptions { compileOptions {