kesav2k04's picture
Upload folder using huggingface_hub
e130e55 verified
|
Raw
History Blame Contribute Delete
1.65 kB

NPU runtime bundle — Hexagon v81 (Snapdragon 8 Elite Gen 5)

Prebuilt llama.cpp binaries + Hexagon HTP backend, so a Snapdragon 8 Elite Gen 5 device can run sahayak-gemma-Q4_0.gguf on the Hexagon NPU without compiling anything.

Contents

  • bin/llama-cli, bin/llama-completion — llama.cpp CLIs (Android arm64)
  • lib/*.so — ggml/llama runtime, including:
    • libggml-hexagon.so — Hexagon (HTP) backend
    • libggml-htp-v81.so — HTP device library for Hexagon v81 (Snapdragon 8 Elite Gen 5 / SM8850)
    • libggml-opencl.so — Adreno GPU backend (fallback)
  • run-npu.sh — one-line launcher

Build provenance

  • Source: ggml-org/llama.cpp build b9966, MIT License
  • Cross-compiled with the arm64-android-snapdragon-release preset (GGML_HEXAGON=ON, GGML_OPENCL=ON) via the ghcr.io/snapdragon-toolchain/arm64-android image (Android NDK r29 + Hexagon SDK 6.6 + OpenCL SDK).

Verification

On a OnePlus 15 (SM8850, Hexagon v81), llama.cpp assigned all 33 model layers to HTP0 (Hexagon) — i.e. the model executes on the NPU, not the CPU. (llama_prepare_model_devices: using device HTP0 (Hexagon) / load_tensors: layer N assigned to device HTP0.)

Device scope

These .so files are specific to Hexagon v81. Other Snapdragon generations need the matching libggml-htp-v{73,75,79,...}.so — rebuild llama.cpp with the Snapdragon preset for your chip.

License

llama.cpp binaries: MIT (© ggml-org / llama.cpp contributors). The model weights (sahayak-gemma-Q4_0.gguf) are separate and governed by the Gemma Terms of Use.