char-fork/llama.cpp

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

alex-spacemitggml-cpu: Add IME2 Instruction Support for the SpacemiT Backend (#22863)81b0d882a

char/aliceai-t5-moe
920 B32 linesraw
1#pragma once
2
3#include <cstddef>
4#include <cstdint>
5
6namespace ggml::cpu::riscv64_spacemit {
7
8enum class spine_mem_pool_backend : uint8_t {
9    none,
10    posix_memalign,
11    transparent_hugepage,
12    hugetlb_1g,
13};
14
15struct spine_mem_pool_tcm_info {
16    bool   available{ false };
17    size_t blk_size{ 0 };
18    size_t blk_num{ 0 };
19    bool   is_fake_tcm{ false };
20};
21
22bool   spine_mem_pool_tcm_init(spine_mem_pool_tcm_info * info) noexcept;
23void * spine_mem_pool_tcm_mem_get(int cpu_id) noexcept;
24void * spine_mem_pool_tcm_mem_wait(int cpu_id) noexcept;
25int    spine_mem_pool_tcm_mem_release(int cpu_id) noexcept;
26
27void * spine_mem_pool_alloc(size_t size, size_t alignment) noexcept;
28void * spine_mem_pool_shared_mem_alloc(size_t size, size_t alignment) noexcept;
29void   spine_mem_pool_free(void * base) noexcept;
30void   spine_mem_pool_shared_mem_free(void * base) noexcept;
31
32}  // namespace ggml::cpu::riscv64_spacemit