cui-llama.rn 1.7.3 → 1.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +217 -17
- package/android/src/main/CMakeLists.txt +34 -15
- package/android/src/main/java/com/rnllama/LlamaContext.java +94 -8
- package/android/src/main/java/com/rnllama/RNLlama.java +247 -0
- package/android/src/main/jni.cpp +213 -14
- package/android/src/main/jniLibs/arm64-v8a/librnllama.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/librnllama_v8.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/librnllama_v8_2.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/librnllama_v8_2_dotprod.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/librnllama_v8_2_dotprod_i8mm.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/librnllama_v8_2_i8mm.so +0 -0
- package/android/src/main/jniLibs/x86_64/librnllama.so +0 -0
- package/android/src/main/jniLibs/x86_64/librnllama_x86_64.so +0 -0
- package/android/src/newarch/java/com/rnllama/RNLlamaModule.java +35 -0
- package/android/src/oldarch/java/com/rnllama/RNLlamaModule.java +34 -0
- package/cpp/README.md +1 -1
- package/cpp/chat-parser.cpp +385 -0
- package/cpp/chat-parser.h +120 -0
- package/cpp/chat.cpp +726 -596
- package/cpp/chat.h +71 -6
- package/cpp/common.cpp +56 -38
- package/cpp/common.h +9 -3
- package/cpp/ggml-backend-reg.cpp +5 -0
- package/cpp/ggml-backend.cpp +10 -2
- package/cpp/ggml-common.h +4 -0
- package/cpp/ggml-cpu/amx/amx.cpp +1 -1
- package/cpp/ggml-cpu/amx/mmq.cpp +11 -10
- package/cpp/ggml-cpu/arch/arm/cpu-feats.cpp +94 -0
- package/cpp/ggml-cpu/arch/arm/quants.c +4114 -0
- package/cpp/ggml-cpu/arch/arm/repack.cpp +2163 -0
- package/cpp/ggml-cpu/arch/x86/cpu-feats.cpp +327 -0
- package/cpp/ggml-cpu/arch/x86/quants.c +4311 -0
- package/cpp/ggml-cpu/{ggml-cpu-aarch64.cpp → arch/x86/repack.cpp} +79 -3225
- package/cpp/ggml-cpu/arch-fallback.h +184 -0
- package/cpp/ggml-cpu/common.h +4 -3
- package/cpp/ggml-cpu/ggml-cpu-impl.h +21 -16
- package/cpp/ggml-cpu/ggml-cpu.c +123 -104
- package/cpp/ggml-cpu/ggml-cpu.cpp +11 -8
- package/cpp/ggml-cpu/ops.cpp +330 -148
- package/cpp/ggml-cpu/ops.h +1 -0
- package/cpp/ggml-cpu/quants.c +1158 -0
- package/cpp/ggml-cpu/{ggml-cpu-quants.h → quants.h} +26 -0
- package/cpp/ggml-cpu/repack.cpp +1571 -0
- package/cpp/ggml-cpu/repack.h +98 -0
- package/cpp/ggml-cpu/simd-mappings.h +330 -38
- package/cpp/ggml-cpu/{ggml-cpu-traits.cpp → traits.cpp} +1 -1
- package/cpp/ggml-cpu/vec.cpp +87 -18
- package/cpp/ggml-cpu/vec.h +249 -94
- package/cpp/ggml-cpu.h +1 -0
- package/cpp/ggml-impl.h +63 -183
- package/cpp/ggml-llama-sim.metallib +0 -0
- package/cpp/ggml-llama.metallib +0 -0
- package/cpp/ggml-metal.m +152 -45
- package/cpp/ggml-quants.c +0 -2
- package/cpp/ggml.c +61 -21
- package/cpp/ggml.h +22 -3
- package/cpp/gguf.cpp +24 -3
- package/cpp/json-partial.cpp +256 -0
- package/cpp/json-partial.h +38 -0
- package/cpp/json-schema-to-grammar.cpp +5 -47
- package/cpp/json-schema-to-grammar.h +4 -4
- package/cpp/llama-arch.cpp +153 -3
- package/cpp/llama-arch.h +27 -1
- package/cpp/llama-batch.cpp +741 -272
- package/cpp/llama-batch.h +112 -54
- package/cpp/llama-chat.cpp +30 -8
- package/cpp/llama-chat.h +1 -0
- package/cpp/llama-context.cpp +524 -339
- package/cpp/llama-context.h +38 -17
- package/cpp/llama-cparams.cpp +4 -0
- package/cpp/llama-cparams.h +2 -0
- package/cpp/llama-grammar.cpp +12 -2
- package/cpp/llama-graph.cpp +431 -356
- package/cpp/llama-graph.h +126 -58
- package/cpp/llama-hparams.cpp +10 -2
- package/cpp/llama-hparams.h +19 -2
- package/cpp/llama-kv-cache-unified-iswa.cpp +279 -0
- package/cpp/llama-kv-cache-unified-iswa.h +128 -0
- package/cpp/llama-kv-cache-unified.cpp +1841 -0
- package/cpp/llama-kv-cache-unified.h +303 -0
- package/cpp/llama-kv-cells.h +439 -0
- package/cpp/llama-memory-hybrid.cpp +246 -0
- package/cpp/llama-memory-hybrid.h +138 -0
- package/cpp/llama-memory-recurrent.cpp +1112 -0
- package/cpp/llama-memory-recurrent.h +183 -0
- package/cpp/llama-memory.cpp +41 -0
- package/cpp/llama-memory.h +86 -5
- package/cpp/llama-mmap.cpp +1 -1
- package/cpp/llama-model-loader.cpp +42 -17
- package/cpp/llama-model-saver.cpp +1 -0
- package/cpp/llama-model.cpp +1639 -513
- package/cpp/llama-model.h +26 -0
- package/cpp/llama-sampling.cpp +2 -2
- package/cpp/llama-vocab.cpp +65 -28
- package/cpp/llama-vocab.h +1 -0
- package/cpp/llama.cpp +11 -7
- package/cpp/llama.h +150 -42
- package/cpp/minja/chat-template.hpp +1 -1
- package/cpp/minja/minja.hpp +1 -1
- package/cpp/{json.hpp → nlohmann/json.hpp} +3027 -2267
- package/cpp/nlohmann/json_fwd.hpp +187 -0
- package/cpp/regex-partial.cpp +204 -0
- package/cpp/regex-partial.h +56 -0
- package/cpp/rn-llama.cpp +646 -35
- package/cpp/rn-llama.h +32 -1
- package/cpp/rn-tts.h +39 -0
- package/cpp/sampling.cpp +7 -8
- package/cpp/tools/mtmd/clip-impl.h +5 -0
- package/cpp/tools/mtmd/clip.cpp +572 -436
- package/cpp/tools/mtmd/clip.h +14 -4
- package/cpp/tools/mtmd/mtmd-audio.cpp +0 -86
- package/cpp/tools/mtmd/mtmd-audio.h +2 -17
- package/cpp/tools/mtmd/mtmd-helper.cpp +175 -12
- package/cpp/tools/mtmd/mtmd-helper.h +91 -0
- package/cpp/tools/mtmd/mtmd.cpp +368 -248
- package/cpp/tools/mtmd/mtmd.h +6 -70
- package/cpp/unicode.cpp +5 -0
- package/ios/CMakeLists.txt +26 -6
- package/ios/RNLlama.h +1 -1
- package/ios/RNLlama.mm +153 -3
- package/ios/RNLlamaContext.h +9 -1
- package/ios/RNLlamaContext.mm +112 -9
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/chat-parser.h +120 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/chat.h +71 -6
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/common.h +9 -3
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/ggml-common.h +4 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/ggml-cpu.h +1 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/ggml-impl.h +63 -183
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/ggml.h +22 -3
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/json-partial.h +38 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/json-schema-to-grammar.h +4 -4
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-arch.h +27 -1
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-batch.h +112 -54
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-chat.h +1 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-context.h +38 -17
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-cparams.h +2 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-graph.h +126 -58
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-hparams.h +19 -2
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-kv-cache-unified-iswa.h +128 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-kv-cache-unified.h +303 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-kv-cells.h +439 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-memory-hybrid.h +138 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-memory-recurrent.h +183 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-memory.h +86 -5
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-model.h +26 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-vocab.h +1 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama.h +150 -42
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/minja/chat-template.hpp +1 -1
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/minja/minja.hpp +1 -1
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/{json.hpp → nlohmann/json.hpp} +3027 -2267
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/nlohmann/json_fwd.hpp +187 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/regex-partial.h +56 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/rn-llama.h +32 -1
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/rn-tts.h +39 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/ggml-llama.metallib +0 -0
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/rnllama +0 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/chat-parser.h +120 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/chat.h +71 -6
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/common.h +9 -3
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/ggml-common.h +4 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/ggml-cpu.h +1 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/ggml-impl.h +63 -183
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/ggml.h +22 -3
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/json-partial.h +38 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/json-schema-to-grammar.h +4 -4
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-arch.h +27 -1
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-batch.h +112 -54
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-chat.h +1 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-context.h +38 -17
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-cparams.h +2 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-graph.h +126 -58
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-hparams.h +19 -2
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cache-unified-iswa.h +128 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cache-unified.h +303 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cells.h +439 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-memory-hybrid.h +138 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-memory-recurrent.h +183 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-memory.h +86 -5
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-model.h +26 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-vocab.h +1 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama.h +150 -42
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/minja/chat-template.hpp +1 -1
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/minja/minja.hpp +1 -1
- package/ios/rnllama.xcframework/{tvos-arm64/rnllama.framework/Headers → ios-arm64_x86_64-simulator/rnllama.framework/Headers/nlohmann}/json.hpp +3027 -2267
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/nlohmann/json_fwd.hpp +187 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/regex-partial.h +56 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/rn-llama.h +32 -1
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/rn-tts.h +39 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/ggml-llama-sim.metallib +0 -0
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/rnllama +0 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/chat-parser.h +120 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/chat.h +71 -6
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/common.h +9 -3
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/ggml-common.h +4 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/ggml-cpu.h +1 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/ggml-impl.h +63 -183
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/ggml.h +22 -3
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/json-partial.h +38 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/json-schema-to-grammar.h +4 -4
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-arch.h +27 -1
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-batch.h +112 -54
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-chat.h +1 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-context.h +38 -17
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-cparams.h +2 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-graph.h +126 -58
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-hparams.h +19 -2
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-kv-cache-unified-iswa.h +128 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-kv-cache-unified.h +303 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-kv-cells.h +439 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-memory-hybrid.h +138 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-memory-recurrent.h +183 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-memory.h +86 -5
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-model.h +26 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-vocab.h +1 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama.h +150 -42
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/minja/chat-template.hpp +1 -1
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/minja/minja.hpp +1 -1
- package/ios/rnllama.xcframework/{ios-arm64_x86_64-simulator/rnllama.framework/Headers → tvos-arm64/rnllama.framework/Headers/nlohmann}/json.hpp +3027 -2267
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/nlohmann/json_fwd.hpp +187 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/regex-partial.h +56 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/rn-llama.h +32 -1
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/rn-tts.h +39 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/ggml-llama.metallib +0 -0
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/rnllama +0 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/chat-parser.h +120 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/chat.h +71 -6
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/common.h +9 -3
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/ggml-common.h +4 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/ggml-cpu.h +1 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/ggml-impl.h +63 -183
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/ggml.h +22 -3
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/json-partial.h +38 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/json-schema-to-grammar.h +4 -4
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-arch.h +27 -1
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-batch.h +112 -54
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-chat.h +1 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-context.h +38 -17
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-cparams.h +2 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-graph.h +126 -58
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-hparams.h +19 -2
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cache-unified-iswa.h +128 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cache-unified.h +303 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cells.h +439 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-memory-hybrid.h +138 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-memory-recurrent.h +183 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-memory.h +86 -5
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-model.h +26 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-vocab.h +1 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama.h +150 -42
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/minja/chat-template.hpp +1 -1
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/minja/minja.hpp +1 -1
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/nlohmann/json.hpp +25526 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/nlohmann/json_fwd.hpp +187 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/regex-partial.h +56 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/rn-llama.h +32 -1
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/rn-tts.h +39 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/ggml-llama-sim.metallib +0 -0
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/rnllama +0 -0
- package/jest/mock.js +24 -0
- package/package.json +1 -1
- package/src/NativeRNLlama.ts +46 -2
- package/src/index.ts +105 -1
- package/cpp/ggml-cpu/ggml-cpu-aarch64.h +0 -8
- package/cpp/ggml-cpu/ggml-cpu-quants.c +0 -13326
- package/cpp/ggml-cpu/sgemm.cpp +0 -3544
- package/cpp/ggml-cpu/sgemm.h +0 -14
- package/cpp/llama-kv-cache.cpp +0 -2827
- package/cpp/llama-kv-cache.h +0 -515
- package/ios/rnllama.xcframework/ios-arm64/rnllama.framework/Headers/llama-kv-cache.h +0 -515
- package/ios/rnllama.xcframework/ios-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cache.h +0 -515
- package/ios/rnllama.xcframework/tvos-arm64/rnllama.framework/Headers/llama-kv-cache.h +0 -515
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/json.hpp +0 -24766
- package/ios/rnllama.xcframework/tvos-arm64_x86_64-simulator/rnllama.framework/Headers/llama-kv-cache.h +0 -515
- /package/cpp/ggml-cpu/{ggml-cpu-traits.h → traits.h} +0 -0
- /package/cpp/tools/mtmd/{miniaudio.h → miniaudio/miniaudio.h} +0 -0
- /package/cpp/tools/mtmd/{stb_image.h → stb/stb_image.h} +0 -0
@@ -0,0 +1,184 @@
|
|
1
|
+
#pragma once
|
2
|
+
|
3
|
+
// Rename `_generic` functions if no native implementation is available.
|
4
|
+
// This effectively selects the generic implementation.
|
5
|
+
|
6
|
+
#if defined(LM_GGML_CPU_GENERIC)
|
7
|
+
// quants.c
|
8
|
+
#define quantize_row_q8_0_generic quantize_row_q8_0
|
9
|
+
#define quantize_row_q8_1_generic quantize_row_q8_1
|
10
|
+
#define quantize_row_q8_K_generic quantize_row_q8_K
|
11
|
+
#define lm_ggml_vec_dot_q4_0_q8_0_generic lm_ggml_vec_dot_q4_0_q8_0
|
12
|
+
#define lm_ggml_vec_dot_q4_1_q8_1_generic lm_ggml_vec_dot_q4_1_q8_1
|
13
|
+
#define lm_ggml_vec_dot_q5_0_q8_0_generic lm_ggml_vec_dot_q5_0_q8_0
|
14
|
+
#define lm_ggml_vec_dot_q5_1_q8_1_generic lm_ggml_vec_dot_q5_1_q8_1
|
15
|
+
#define lm_ggml_vec_dot_q8_0_q8_0_generic lm_ggml_vec_dot_q8_0_q8_0
|
16
|
+
#define lm_ggml_vec_dot_tq1_0_q8_K_generic lm_ggml_vec_dot_tq1_0_q8_K
|
17
|
+
#define lm_ggml_vec_dot_tq2_0_q8_K_generic lm_ggml_vec_dot_tq2_0_q8_K
|
18
|
+
#define lm_ggml_vec_dot_q2_K_q8_K_generic lm_ggml_vec_dot_q2_K_q8_K
|
19
|
+
#define lm_ggml_vec_dot_q3_K_q8_K_generic lm_ggml_vec_dot_q3_K_q8_K
|
20
|
+
#define lm_ggml_vec_dot_q4_K_q8_K_generic lm_ggml_vec_dot_q4_K_q8_K
|
21
|
+
#define lm_ggml_vec_dot_q5_K_q8_K_generic lm_ggml_vec_dot_q5_K_q8_K
|
22
|
+
#define lm_ggml_vec_dot_q6_K_q8_K_generic lm_ggml_vec_dot_q6_K_q8_K
|
23
|
+
#define lm_ggml_vec_dot_iq2_xxs_q8_K_generic lm_ggml_vec_dot_iq2_xxs_q8_K
|
24
|
+
#define lm_ggml_vec_dot_iq2_xs_q8_K_generic lm_ggml_vec_dot_iq2_xs_q8_K
|
25
|
+
#define lm_ggml_vec_dot_iq2_s_q8_K_generic lm_ggml_vec_dot_iq2_s_q8_K
|
26
|
+
#define lm_ggml_vec_dot_iq3_xxs_q8_K_generic lm_ggml_vec_dot_iq3_xxs_q8_K
|
27
|
+
#define lm_ggml_vec_dot_iq3_s_q8_K_generic lm_ggml_vec_dot_iq3_s_q8_K
|
28
|
+
#define lm_ggml_vec_dot_iq1_s_q8_K_generic lm_ggml_vec_dot_iq1_s_q8_K
|
29
|
+
#define lm_ggml_vec_dot_iq1_m_q8_K_generic lm_ggml_vec_dot_iq1_m_q8_K
|
30
|
+
#define lm_ggml_vec_dot_iq4_nl_q8_0_generic lm_ggml_vec_dot_iq4_nl_q8_0
|
31
|
+
#define lm_ggml_vec_dot_iq4_xs_q8_K_generic lm_ggml_vec_dot_iq4_xs_q8_K
|
32
|
+
// repack.cpp
|
33
|
+
#define lm_ggml_quantize_mat_q8_0_4x4_generic lm_ggml_quantize_mat_q8_0_4x4
|
34
|
+
#define lm_ggml_quantize_mat_q8_0_4x8_generic lm_ggml_quantize_mat_q8_0_4x8
|
35
|
+
#define lm_ggml_quantize_mat_q8_K_4x8_generic lm_ggml_quantize_mat_q8_K_4x8
|
36
|
+
#define lm_ggml_gemv_q4_0_4x4_q8_0_generic lm_ggml_gemv_q4_0_4x4_q8_0
|
37
|
+
#define lm_ggml_gemv_q4_0_4x8_q8_0_generic lm_ggml_gemv_q4_0_4x8_q8_0
|
38
|
+
#define lm_ggml_gemv_q4_0_8x8_q8_0_generic lm_ggml_gemv_q4_0_8x8_q8_0
|
39
|
+
#define lm_ggml_gemv_q4_K_8x8_q8_K_generic lm_ggml_gemv_q4_K_8x8_q8_K
|
40
|
+
#define lm_ggml_gemv_iq4_nl_4x4_q8_0_generic lm_ggml_gemv_iq4_nl_4x4_q8_0
|
41
|
+
#define lm_ggml_gemm_q4_0_4x4_q8_0_generic lm_ggml_gemm_q4_0_4x4_q8_0
|
42
|
+
#define lm_ggml_gemm_q4_0_4x8_q8_0_generic lm_ggml_gemm_q4_0_4x8_q8_0
|
43
|
+
#define lm_ggml_gemm_q4_0_8x8_q8_0_generic lm_ggml_gemm_q4_0_8x8_q8_0
|
44
|
+
#define lm_ggml_gemm_q4_K_8x8_q8_K_generic lm_ggml_gemm_q4_K_8x8_q8_K
|
45
|
+
#define lm_ggml_gemm_iq4_nl_4x4_q8_0_generic lm_ggml_gemm_iq4_nl_4x4_q8_0
|
46
|
+
#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_M_ARM64)
|
47
|
+
// repack.cpp
|
48
|
+
#define lm_ggml_quantize_mat_q8_K_4x8_generic lm_ggml_quantize_mat_q8_K_4x8
|
49
|
+
#define lm_ggml_gemv_q4_K_8x8_q8_K_generic lm_ggml_gemv_q4_K_8x8_q8_K
|
50
|
+
#define lm_ggml_gemm_q4_K_8x8_q8_K_generic lm_ggml_gemm_q4_K_8x8_q8_K
|
51
|
+
#elif defined(__x86_64__) || defined(__i386__) || defined(_M_IX86) || defined(_M_X64)
|
52
|
+
// repack.cpp
|
53
|
+
#define lm_ggml_quantize_mat_q8_0_4x4_generic lm_ggml_quantize_mat_q8_0_4x4
|
54
|
+
#define lm_ggml_gemv_q4_0_4x4_q8_0_generic lm_ggml_gemv_q4_0_4x4_q8_0
|
55
|
+
#define lm_ggml_gemv_q4_0_4x8_q8_0_generic lm_ggml_gemv_q4_0_4x8_q8_0
|
56
|
+
#define lm_ggml_gemv_iq4_nl_4x4_q8_0_generic lm_ggml_gemv_iq4_nl_4x4_q8_0
|
57
|
+
#define lm_ggml_gemm_q4_0_4x4_q8_0_generic lm_ggml_gemm_q4_0_4x4_q8_0
|
58
|
+
#define lm_ggml_gemm_q4_0_4x8_q8_0_generic lm_ggml_gemm_q4_0_4x8_q8_0
|
59
|
+
#define lm_ggml_gemm_iq4_nl_4x4_q8_0_generic lm_ggml_gemm_iq4_nl_4x4_q8_0
|
60
|
+
#elif defined(__POWERPC__) || defined(__powerpc__)
|
61
|
+
// ref: https://github.com/ggml-org/llama.cpp/pull/14146#issuecomment-2972561679
|
62
|
+
// quants.c
|
63
|
+
#define quantize_row_q8_K_generic quantize_row_q8_K
|
64
|
+
#define lm_ggml_vec_dot_tq1_0_q8_K_generic lm_ggml_vec_dot_tq1_0_q8_K
|
65
|
+
#define lm_ggml_vec_dot_tq2_0_q8_K_generic lm_ggml_vec_dot_tq2_0_q8_K
|
66
|
+
#define lm_ggml_vec_dot_iq1_m_q8_K_generic lm_ggml_vec_dot_iq1_m_q8_K
|
67
|
+
// repack.cpp
|
68
|
+
#define lm_ggml_quantize_mat_q8_0_4x4_generic lm_ggml_quantize_mat_q8_0_4x4
|
69
|
+
#define lm_ggml_quantize_mat_q8_0_4x8_generic lm_ggml_quantize_mat_q8_0_4x8
|
70
|
+
#define lm_ggml_quantize_mat_q8_K_4x8_generic lm_ggml_quantize_mat_q8_K_4x8
|
71
|
+
#define lm_ggml_gemv_q4_0_4x4_q8_0_generic lm_ggml_gemv_q4_0_4x4_q8_0
|
72
|
+
#define lm_ggml_gemv_q4_0_4x8_q8_0_generic lm_ggml_gemv_q4_0_4x8_q8_0
|
73
|
+
#define lm_ggml_gemv_q4_0_8x8_q8_0_generic lm_ggml_gemv_q4_0_8x8_q8_0
|
74
|
+
#define lm_ggml_gemv_q4_K_8x8_q8_K_generic lm_ggml_gemv_q4_K_8x8_q8_K
|
75
|
+
#define lm_ggml_gemv_iq4_nl_4x4_q8_0_generic lm_ggml_gemv_iq4_nl_4x4_q8_0
|
76
|
+
#define lm_ggml_gemm_q4_0_4x4_q8_0_generic lm_ggml_gemm_q4_0_4x4_q8_0
|
77
|
+
#define lm_ggml_gemm_q4_0_4x8_q8_0_generic lm_ggml_gemm_q4_0_4x8_q8_0
|
78
|
+
#define lm_ggml_gemm_q4_0_8x8_q8_0_generic lm_ggml_gemm_q4_0_8x8_q8_0
|
79
|
+
#define lm_ggml_gemm_q4_K_8x8_q8_K_generic lm_ggml_gemm_q4_K_8x8_q8_K
|
80
|
+
#define lm_ggml_gemm_iq4_nl_4x4_q8_0_generic lm_ggml_gemm_iq4_nl_4x4_q8_0
|
81
|
+
#elif defined(__loongarch64)
|
82
|
+
// quants.c
|
83
|
+
#define quantize_row_q8_K_generic quantize_row_q8_K
|
84
|
+
#define lm_ggml_vec_dot_tq1_0_q8_K_generic lm_ggml_vec_dot_tq1_0_q8_K
|
85
|
+
#define lm_ggml_vec_dot_tq2_0_q8_K_generic lm_ggml_vec_dot_tq2_0_q8_K
|
86
|
+
#define lm_ggml_vec_dot_iq1_m_q8_K_generic lm_ggml_vec_dot_iq1_m_q8_K
|
87
|
+
// repack.cpp
|
88
|
+
#define lm_ggml_quantize_mat_q8_0_4x4_generic lm_ggml_quantize_mat_q8_0_4x4
|
89
|
+
#define lm_ggml_quantize_mat_q8_0_4x8_generic lm_ggml_quantize_mat_q8_0_4x8
|
90
|
+
#define lm_ggml_quantize_mat_q8_K_4x8_generic lm_ggml_quantize_mat_q8_K_4x8
|
91
|
+
#define lm_ggml_gemv_q4_0_4x4_q8_0_generic lm_ggml_gemv_q4_0_4x4_q8_0
|
92
|
+
#define lm_ggml_gemv_q4_0_4x8_q8_0_generic lm_ggml_gemv_q4_0_4x8_q8_0
|
93
|
+
#define lm_ggml_gemv_q4_0_8x8_q8_0_generic lm_ggml_gemv_q4_0_8x8_q8_0
|
94
|
+
#define lm_ggml_gemv_q4_K_8x8_q8_K_generic lm_ggml_gemv_q4_K_8x8_q8_K
|
95
|
+
#define lm_ggml_gemv_iq4_nl_4x4_q8_0_generic lm_ggml_gemv_iq4_nl_4x4_q8_0
|
96
|
+
#define lm_ggml_gemm_q4_0_4x4_q8_0_generic lm_ggml_gemm_q4_0_4x4_q8_0
|
97
|
+
#define lm_ggml_gemm_q4_0_4x8_q8_0_generic lm_ggml_gemm_q4_0_4x8_q8_0
|
98
|
+
#define lm_ggml_gemm_q4_0_8x8_q8_0_generic lm_ggml_gemm_q4_0_8x8_q8_0
|
99
|
+
#define lm_ggml_gemm_q4_K_8x8_q8_K_generic lm_ggml_gemm_q4_K_8x8_q8_K
|
100
|
+
#define lm_ggml_gemm_iq4_nl_4x4_q8_0_generic lm_ggml_gemm_iq4_nl_4x4_q8_0
|
101
|
+
#elif defined(__riscv)
|
102
|
+
// quants.c
|
103
|
+
#define quantize_row_q8_K_generic quantize_row_q8_K
|
104
|
+
#define lm_ggml_vec_dot_tq1_0_q8_K_generic lm_ggml_vec_dot_tq1_0_q8_K
|
105
|
+
#define lm_ggml_vec_dot_tq2_0_q8_K_generic lm_ggml_vec_dot_tq2_0_q8_K
|
106
|
+
#define lm_ggml_vec_dot_iq2_xxs_q8_K_generic lm_ggml_vec_dot_iq2_xxs_q8_K
|
107
|
+
#define lm_ggml_vec_dot_iq2_xs_q8_K_generic lm_ggml_vec_dot_iq2_xs_q8_K
|
108
|
+
#define lm_ggml_vec_dot_iq2_s_q8_K_generic lm_ggml_vec_dot_iq2_s_q8_K
|
109
|
+
#define lm_ggml_vec_dot_iq3_xxs_q8_K_generic lm_ggml_vec_dot_iq3_xxs_q8_K
|
110
|
+
#define lm_ggml_vec_dot_iq3_s_q8_K_generic lm_ggml_vec_dot_iq3_s_q8_K
|
111
|
+
#define lm_ggml_vec_dot_iq1_s_q8_K_generic lm_ggml_vec_dot_iq1_s_q8_K
|
112
|
+
#define lm_ggml_vec_dot_iq1_m_q8_K_generic lm_ggml_vec_dot_iq1_m_q8_K
|
113
|
+
#define lm_ggml_vec_dot_iq4_nl_q8_0_generic lm_ggml_vec_dot_iq4_nl_q8_0
|
114
|
+
#define lm_ggml_vec_dot_iq4_xs_q8_K_generic lm_ggml_vec_dot_iq4_xs_q8_K
|
115
|
+
// repack.cpp
|
116
|
+
#define lm_ggml_quantize_mat_q8_0_4x4_generic lm_ggml_quantize_mat_q8_0_4x4
|
117
|
+
#define lm_ggml_quantize_mat_q8_0_4x8_generic lm_ggml_quantize_mat_q8_0_4x8
|
118
|
+
#define lm_ggml_quantize_mat_q8_K_4x8_generic lm_ggml_quantize_mat_q8_K_4x8
|
119
|
+
#define lm_ggml_gemv_q4_0_4x4_q8_0_generic lm_ggml_gemv_q4_0_4x4_q8_0
|
120
|
+
#define lm_ggml_gemv_q4_0_4x8_q8_0_generic lm_ggml_gemv_q4_0_4x8_q8_0
|
121
|
+
#define lm_ggml_gemv_q4_K_8x8_q8_K_generic lm_ggml_gemv_q4_K_8x8_q8_K
|
122
|
+
#define lm_ggml_gemv_iq4_nl_4x4_q8_0_generic lm_ggml_gemv_iq4_nl_4x4_q8_0
|
123
|
+
#define lm_ggml_gemm_q4_0_4x4_q8_0_generic lm_ggml_gemm_q4_0_4x4_q8_0
|
124
|
+
#define lm_ggml_gemm_q4_0_4x8_q8_0_generic lm_ggml_gemm_q4_0_4x8_q8_0
|
125
|
+
#define lm_ggml_gemm_q4_K_8x8_q8_K_generic lm_ggml_gemm_q4_K_8x8_q8_K
|
126
|
+
#define lm_ggml_gemm_iq4_nl_4x4_q8_0_generic lm_ggml_gemm_iq4_nl_4x4_q8_0
|
127
|
+
#elif defined(__s390x__)
|
128
|
+
// quants.c
|
129
|
+
#define quantize_row_q8_K_generic quantize_row_q8_K
|
130
|
+
#define lm_ggml_vec_dot_q5_0_q8_0_generic lm_ggml_vec_dot_q5_0_q8_0
|
131
|
+
#define lm_ggml_vec_dot_q5_1_q8_1_generic lm_ggml_vec_dot_q5_1_q8_1
|
132
|
+
#define lm_ggml_vec_dot_tq1_0_q8_K_generic lm_ggml_vec_dot_tq1_0_q8_K
|
133
|
+
#define lm_ggml_vec_dot_tq2_0_q8_K_generic lm_ggml_vec_dot_tq2_0_q8_K
|
134
|
+
#define lm_ggml_vec_dot_q2_K_q8_K_generic lm_ggml_vec_dot_q2_K_q8_K
|
135
|
+
#define lm_ggml_vec_dot_iq2_xxs_q8_K_generic lm_ggml_vec_dot_iq2_xxs_q8_K
|
136
|
+
#define lm_ggml_vec_dot_iq2_xs_q8_K_generic lm_ggml_vec_dot_iq2_xs_q8_K
|
137
|
+
#define lm_ggml_vec_dot_iq2_s_q8_K_generic lm_ggml_vec_dot_iq2_s_q8_K
|
138
|
+
#define lm_ggml_vec_dot_iq3_xxs_q8_K_generic lm_ggml_vec_dot_iq3_xxs_q8_K
|
139
|
+
#define lm_ggml_vec_dot_iq3_s_q8_K_generic lm_ggml_vec_dot_iq3_s_q8_K
|
140
|
+
#define lm_ggml_vec_dot_iq1_s_q8_K_generic lm_ggml_vec_dot_iq1_s_q8_K
|
141
|
+
#define lm_ggml_vec_dot_iq1_m_q8_K_generic lm_ggml_vec_dot_iq1_m_q8_K
|
142
|
+
// repack.cpp
|
143
|
+
#define lm_ggml_quantize_mat_q8_0_4x4_generic lm_ggml_quantize_mat_q8_0_4x4
|
144
|
+
#define lm_ggml_quantize_mat_q8_0_4x8_generic lm_ggml_quantize_mat_q8_0_4x8
|
145
|
+
#define lm_ggml_quantize_mat_q8_K_4x8_generic lm_ggml_quantize_mat_q8_K_4x8
|
146
|
+
#define lm_ggml_gemv_q4_0_4x4_q8_0_generic lm_ggml_gemv_q4_0_4x4_q8_0
|
147
|
+
#define lm_ggml_gemv_q4_0_4x8_q8_0_generic lm_ggml_gemv_q4_0_4x8_q8_0
|
148
|
+
#define lm_ggml_gemv_q4_0_8x8_q8_0_generic lm_ggml_gemv_q4_0_8x8_q8_0
|
149
|
+
#define lm_ggml_gemv_q4_K_8x8_q8_K_generic lm_ggml_gemv_q4_K_8x8_q8_K
|
150
|
+
#define lm_ggml_gemv_iq4_nl_4x4_q8_0_generic lm_ggml_gemv_iq4_nl_4x4_q8_0
|
151
|
+
#define lm_ggml_gemm_q4_0_4x4_q8_0_generic lm_ggml_gemm_q4_0_4x4_q8_0
|
152
|
+
#define lm_ggml_gemm_q4_0_4x8_q8_0_generic lm_ggml_gemm_q4_0_4x8_q8_0
|
153
|
+
#define lm_ggml_gemm_q4_0_8x8_q8_0_generic lm_ggml_gemm_q4_0_8x8_q8_0
|
154
|
+
#define lm_ggml_gemm_q4_K_8x8_q8_K_generic lm_ggml_gemm_q4_K_8x8_q8_K
|
155
|
+
#define lm_ggml_gemm_iq4_nl_4x4_q8_0_generic lm_ggml_gemm_iq4_nl_4x4_q8_0
|
156
|
+
#elif defined(__wasm__)
|
157
|
+
// quants.c
|
158
|
+
#define lm_ggml_vec_dot_q4_1_q8_1_generic lm_ggml_vec_dot_q4_1_q8_1
|
159
|
+
#define lm_ggml_vec_dot_tq1_0_q8_K_generic lm_ggml_vec_dot_tq1_0_q8_K
|
160
|
+
#define lm_ggml_vec_dot_tq2_0_q8_K_generic lm_ggml_vec_dot_tq2_0_q8_K
|
161
|
+
#define lm_ggml_vec_dot_iq2_xxs_q8_K_generic lm_ggml_vec_dot_iq2_xxs_q8_K
|
162
|
+
#define lm_ggml_vec_dot_iq2_xs_q8_K_generic lm_ggml_vec_dot_iq2_xs_q8_K
|
163
|
+
#define lm_ggml_vec_dot_iq2_s_q8_K_generic lm_ggml_vec_dot_iq2_s_q8_K
|
164
|
+
#define lm_ggml_vec_dot_iq3_xxs_q8_K_generic lm_ggml_vec_dot_iq3_xxs_q8_K
|
165
|
+
#define lm_ggml_vec_dot_iq3_s_q8_K_generic lm_ggml_vec_dot_iq3_s_q8_K
|
166
|
+
#define lm_ggml_vec_dot_iq1_s_q8_K_generic lm_ggml_vec_dot_iq1_s_q8_K
|
167
|
+
#define lm_ggml_vec_dot_iq1_m_q8_K_generic lm_ggml_vec_dot_iq1_m_q8_K
|
168
|
+
#define lm_ggml_vec_dot_iq4_nl_q8_0_generic lm_ggml_vec_dot_iq4_nl_q8_0
|
169
|
+
#define lm_ggml_vec_dot_iq4_xs_q8_K_generic lm_ggml_vec_dot_iq4_xs_q8_K
|
170
|
+
// repack.cpp
|
171
|
+
#define lm_ggml_quantize_mat_q8_0_4x4_generic lm_ggml_quantize_mat_q8_0_4x4
|
172
|
+
#define lm_ggml_quantize_mat_q8_0_4x8_generic lm_ggml_quantize_mat_q8_0_4x8
|
173
|
+
#define lm_ggml_quantize_mat_q8_K_4x8_generic lm_ggml_quantize_mat_q8_K_4x8
|
174
|
+
#define lm_ggml_gemv_q4_0_4x4_q8_0_generic lm_ggml_gemv_q4_0_4x4_q8_0
|
175
|
+
#define lm_ggml_gemv_q4_0_4x8_q8_0_generic lm_ggml_gemv_q4_0_4x8_q8_0
|
176
|
+
#define lm_ggml_gemv_q4_0_8x8_q8_0_generic lm_ggml_gemv_q4_0_8x8_q8_0
|
177
|
+
#define lm_ggml_gemv_q4_K_8x8_q8_K_generic lm_ggml_gemv_q4_K_8x8_q8_K
|
178
|
+
#define lm_ggml_gemv_iq4_nl_4x4_q8_0_generic lm_ggml_gemv_iq4_nl_4x4_q8_0
|
179
|
+
#define lm_ggml_gemm_q4_0_4x4_q8_0_generic lm_ggml_gemm_q4_0_4x4_q8_0
|
180
|
+
#define lm_ggml_gemm_q4_0_4x8_q8_0_generic lm_ggml_gemm_q4_0_4x8_q8_0
|
181
|
+
#define lm_ggml_gemm_q4_0_8x8_q8_0_generic lm_ggml_gemm_q4_0_8x8_q8_0
|
182
|
+
#define lm_ggml_gemm_q4_K_8x8_q8_K_generic lm_ggml_gemm_q4_K_8x8_q8_K
|
183
|
+
#define lm_ggml_gemm_iq4_nl_4x4_q8_0_generic lm_ggml_gemm_iq4_nl_4x4_q8_0
|
184
|
+
#endif
|
package/cpp/ggml-cpu/common.h
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
#pragma once
|
2
2
|
|
3
3
|
#include "ggml.h"
|
4
|
-
#include "
|
4
|
+
#include "traits.h"
|
5
5
|
#include "ggml-cpu-impl.h"
|
6
6
|
#include "ggml-impl.h"
|
7
|
+
#include "simd-mappings.h"
|
7
8
|
|
8
9
|
#ifdef __cplusplus
|
9
10
|
|
@@ -12,11 +13,11 @@
|
|
12
13
|
// convenience functions/macros for use in template calls
|
13
14
|
// note: these won't be required after the 'traits' lookup table is used.
|
14
15
|
static inline lm_ggml_fp16_t f32_to_f16(float x) {
|
15
|
-
return
|
16
|
+
return LM_GGML_CPU_FP32_TO_FP16(x);
|
16
17
|
}
|
17
18
|
|
18
19
|
static inline float f16_to_f32(lm_ggml_fp16_t x) {
|
19
|
-
return
|
20
|
+
return LM_GGML_CPU_FP16_TO_FP32(x);
|
20
21
|
}
|
21
22
|
|
22
23
|
static inline lm_ggml_bf16_t f32_to_bf16(float x) {
|
@@ -62,11 +62,17 @@ struct lm_ggml_compute_params {
|
|
62
62
|
#if defined(__s390x__) && defined(__VEC__)
|
63
63
|
#ifndef __VXE__
|
64
64
|
#define __VXE__
|
65
|
-
#endif
|
65
|
+
#endif // __VXE__
|
66
66
|
#ifndef __VXE2__
|
67
67
|
#define __VXE2__
|
68
|
-
#endif
|
69
|
-
#endif
|
68
|
+
#endif // __VXE2__
|
69
|
+
#endif // __s390x__ && __VEC__
|
70
|
+
|
71
|
+
#if defined(__s390x__) && defined(LM_GGML_NNPA)
|
72
|
+
#ifndef __NNPA__
|
73
|
+
#define __NNPA__
|
74
|
+
#endif // __NNPA__
|
75
|
+
#endif // __s390x__ && LM_GGML_NNPA
|
70
76
|
|
71
77
|
#if defined(__ARM_FEATURE_SVE)
|
72
78
|
#include <sys/prctl.h>
|
@@ -320,21 +326,17 @@ inline static int32x4_t lm_ggml_vdotq_s32(int32x4_t acc, int8x16_t a, int8x16_t
|
|
320
326
|
|
321
327
|
#ifdef __wasm_simd128__
|
322
328
|
#include <wasm_simd128.h>
|
323
|
-
#
|
329
|
+
#endif
|
330
|
+
|
324
331
|
#ifdef __POWER9_VECTOR__
|
325
332
|
#include <altivec.h>
|
326
|
-
#
|
333
|
+
#endif
|
334
|
+
|
327
335
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
328
336
|
#include <intrin.h>
|
329
|
-
#
|
330
|
-
#if defined(__AVX__) || defined(__AVX2__) || defined(__AVX512F__) || defined(__SSSE3__) || defined(__SSE3__) || defined(__SSE__)
|
331
|
-
#if !defined(__riscv)
|
337
|
+
#elif defined(__AVX__) || defined(__AVX2__) || defined(__AVX512F__) || defined(__SSSE3__) || defined(__SSE3__) || defined(__SSE__)
|
332
338
|
#include <immintrin.h>
|
333
339
|
#endif
|
334
|
-
#endif
|
335
|
-
#endif
|
336
|
-
#endif
|
337
|
-
#endif
|
338
340
|
|
339
341
|
#ifdef __riscv_v_intrinsic
|
340
342
|
#include <riscv_vector.h>
|
@@ -375,7 +377,7 @@ inline static int32x4_t lm_ggml_vdotq_s32(int32x4_t acc, int8x16_t a, int8x16_t
|
|
375
377
|
#define vec_xor(a, b) ((a) ^ (b)) // Vector XOR
|
376
378
|
#endif
|
377
379
|
|
378
|
-
typedef signed
|
380
|
+
typedef signed char char8x16_t __attribute__((vector_size(16)));
|
379
381
|
typedef unsigned char uchar8x16_t __attribute__((vector_size(16)));
|
380
382
|
|
381
383
|
typedef int8_t int8x16_t __attribute__((vector_size(16)));
|
@@ -386,10 +388,10 @@ typedef uint8_t uint8x16_t __attribute__((vector_size(16)));
|
|
386
388
|
typedef uint16_t uint16x8_t __attribute__((vector_size(16)));
|
387
389
|
typedef uint32_t uint32x4_t __attribute__((vector_size(16)));
|
388
390
|
|
389
|
-
typedef float
|
390
|
-
typedef double double64x2_t
|
391
|
+
typedef float float32x4_t __attribute__((vector_size(16)));
|
392
|
+
typedef double double64x2_t __attribute__((vector_size(16)));
|
391
393
|
|
392
|
-
typedef signed
|
394
|
+
typedef signed long long long64x2_t __attribute__((vector_size(16)));
|
393
395
|
typedef unsigned long long ulong64x2_t __attribute__((vector_size(16)));
|
394
396
|
|
395
397
|
typedef struct lm_ggml_uint8x16x2_t {
|
@@ -507,6 +509,9 @@ static __m256 __lasx_xvreplfr2vr_s(const float val) {
|
|
507
509
|
// TODO: move to ggml-threading
|
508
510
|
void lm_ggml_barrier(struct lm_ggml_threadpool * tp);
|
509
511
|
|
512
|
+
void lm_ggml_threadpool_chunk_set(struct lm_ggml_threadpool * tp, int value);
|
513
|
+
int lm_ggml_threadpool_chunk_add(struct lm_ggml_threadpool * tp, int value);
|
514
|
+
|
510
515
|
#ifdef __cplusplus
|
511
516
|
}
|
512
517
|
#endif
|