char-fork/llama.cpp

git clone https://git.t4t.associates/char-fork/llama.cpp

Max Krasnyanskyhexagon: support for multi-NPU devices (IQ9, IQ10) and fully asynchronous backend (#26501)192067b72

char/aliceai-t5-moe
1.2 KiB58 linesraw
1cmake_minimum_required(VERSION 3.22.2)
2project(ggml-htp C CXX ASM)
3
4include(${HEXAGON_SDK_ROOT}/build/cmake/hexagon_fun.cmake)
5
6include_directories(
7    ${HEXAGON_SDK_ROOT}/incs
8    ${HEXAGON_SDK_ROOT}/incs/stddef
9    ${CMAKE_CURRENT_SOURCE_DIR}/../../../include
10    ${CMAKE_CURRENT_SOURCE_DIR}/../..
11    ${CMAKE_CURRENT_SOURCE_DIR}/..
12    ${CMAKE_CURRENT_SOURCE_DIR}
13    ${CMAKE_CURRENT_BINARY_DIR})
14
15set(HTP_LIB ggml-htp-${DSP_VERSION})
16
17add_library(${HTP_LIB} SHARED
18    main.c
19    htp_iface_skel.c
20    work-queue.c
21    dma-queue.c
22    hmx-queue.c
23    htp-tensor.c
24    matmul-ops.c
25    flash-attn-ops.c
26    gated-delta-net-ops.c
27    binary-ops.c
28    unary-ops.c
29    sum-rows-ops.c
30    softmax-ops.c
31    act-ops.c
32    rope-ops.c
33    set-rows-ops.c
34    get-rows-ops.c
35    cpy-ops.c
36    repeat-ops.c
37    ssm-conv.c
38    cumsum-ops.c
39    fill-ops.c
40    concat-ops.c
41    diag-ops.c
42    solve-tri-ops.c
43    pad-ops.c
44    argsort-ops.c
45    im2col-ops.c
46    allreduce-ops.c
47)
48
49target_compile_definitions(${HTP_LIB} PRIVATE
50    $<IF:$<BOOL:${HEXAGON_HTP_DEBUG}>,HTP_DEBUG=1,NDEBUG=1>
51    $<IF:$<BOOL:${HEXAGON_HTP_DEBUG}>,FARF_HIGH=1,>)
52
53
54build_idl(htp_iface.idl ${HTP_LIB})
55
56set_target_properties(${HTP_LIB} PROPERTIES EXPORT_COMPILE_COMMANDS ON)
57
58install(TARGETS ${HTP_LIB})