Skip to content

Commit 67beeb6

Browse files
committed
fix typo
1 parent 3a46ac3 commit 67beeb6

File tree

4 files changed

+17
-7
lines changed

4 files changed

+17
-7
lines changed

llama.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15402,8 +15402,10 @@ struct llama_context * llama_new_context_with_model(
1540215402
}
1540315403
#elif defined(GGML_USE_QNN)
1540415404
if (model->n_gpu_layers > 0) {
15405-
//the second param is package name of Andorid app, can be got by JNI from Java layer
15406-
ggml_backend_t backend = ggml_backend_qnn_init(model->main_gpu, "/data/data/com.ggml.llamacpp/");
15405+
//the second param is data path of prebuit QNN libs provided by Qualcomm
15406+
//in Andorid APP mode, can be obtained through JNI from Java layer
15407+
//in Andorid terminal mode, can be hardcoded to "/data/local/tmp"
15408+
ggml_backend_t backend = ggml_backend_qnn_init(model->main_gpu, "/data/local/tmp/");
1540715409
if (nullptr == backend) {
1540815410
LLAMA_LOG_ERROR("%s: failed to initialize QNN backend\n", __func__);
1540915411
llama_free(ctx);

tests/ggml-qnn/CMakeLists.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
cmake_minimum_required(VERSION 3.22.1)
2-
project(ggml-qnn)
2+
project(ggml-qnn-test)
33

44
set(CMAKE_VERBOSE_MAKEFILE on)
55
set(CMAKE_CXX_STANDARD 17)
66
set(CMAKE_CXX_STANDARD_REQUIRED ON)
77
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
88

9+
#set to ON if target Android phone is based on Qualcomm Snapdragon 8 Gen 3
910
set(TARGET_SNAPDRAGON_8_GEN3 OFF)
1011

1112
set(LLAMACPP_SRC_PATH ${PROJECT_ROOT_PATH})
@@ -37,8 +38,10 @@ message("target name : ${TARGET_NAME}")
3738
add_definitions(-D__ARM_NEON)
3839
add_definitions(-DGGML_USE_QNN)
3940

41+
if(CMAKE_BUILD_TYPE STREQUAL "release")
4042
add_definitions(-DNDEBUG)
4143
add_definitions(-O3)
44+
endif()
4245

4346
if (TARGET_SNAPDRAGON_8_GEN3)
4447
# the below build optimization only works well on Qualcomm SM8650-AB Snapdragon 8 Gen 3

tests/ggml-qnn/build-ggml-qnn.sh

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,15 @@ QNN_SDK_PATH=/opt/qcom/aistack/qnn/2.20.0.240223/
1010

1111

1212
ANDROID_NDK=`pwd`/android-ndk-r26c
13+
ANDROID_PLATFORM=android-34
14+
#BUILD_TYPE=release
15+
BUILD_TYPE=debug
1316
TARGET=ggml-qnn-test
1417

1518

1619
function dump_vars()
1720
{
18-
echo -e "PROJECT_ROOT_PATH: ${PROJECT_ROOT_PATH}"
21+
echo -e "LLAMACPP_ROOT_PATH: ${LLAMACPP_ROOT_PATH}"
1922
echo -e "ANDROID_NDK: ${ANDROID_NDK}"
2023
echo -e "QNN_SDK_PATH: ${QNN_SDK_PATH}"
2124
}
@@ -61,7 +64,7 @@ function check_and_download_ndk()
6164

6265
function build_arm64
6366
{
64-
cmake -H. -B./out/arm64-v8a -DPROJECT_ROOT_PATH=${LLAMACPP_ROOT_PATH} -DTARGET_NAME=${TARGET} -DCMAKE_BUILD_TYPE=${PROJECT_BUILD_TYPE} -DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=${ANDROID_PLATFORM} -DANDROID_NDK=${ANDROID_NDK} -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake -DQNN_SDK_PATH=${QNN_SDK_PATH}
67+
cmake -H. -B./out/arm64-v8a -DPROJECT_ROOT_PATH=${LLAMACPP_ROOT_PATH} -DTARGET_NAME=${TARGET} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=${ANDROID_PLATFORM} -DANDROID_NDK=${ANDROID_NDK} -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake -DQNN_SDK_PATH=${QNN_SDK_PATH}
6568

6669
cd ./out/arm64-v8a
6770
make

tests/ggml-qnn/run-ggml-qnn.sh

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
#!/bin/bash
22

3-
#modify following lines to adapt to local dev envs
3+
#modify following line to adapt to local dev envs
4+
#https://qpm.qualcomm.com/#/main/tools/details/qualcomm_ai_engine_direct
5+
#https://developer.qualcomm.com/software/hexagon-dsp-sdk/tools
46
QNN_SDK_PATH=/opt/qcom/aistack/qnn/2.20.0.240223/
57

68
GGML_QNN_TEST=ggml-qnn-test
@@ -10,7 +12,7 @@ adb push ${GGML_QNN_TEST} ${REMOTE_PATH}
1012

1113
adb shell ls ${REMOTE_PATH}/libQnnCpu.so
1214
if [ $? -eq 0 ]; then
13-
printf "QNN libs already exist\n"
15+
printf "QNN libs already exist on Android phone\n"
1416
else
1517
adb push ${QNN_SDK_PATH}/lib/aarch64-android/libQnnSystem.so ${REMOTE_PATH}/
1618
adb push ${QNN_SDK_PATH}/lib/aarch64-android/libQnnCpu.so ${REMOTE_PATH}/

0 commit comments

Comments
 (0)