char-fork/llama.cpp
git clone https://git.t4t.associates/char-fork/llama.cpp
0d8831543
char/aliceai-t5-moe
1#pragma once 2#include "ggml-backend-impl.h" 3#include "ggml-cpu-impl.h" 4#include "ggml.h" 5 6#ifdef __cplusplus 7# include <vector> 8extern "C" { 9#endif 10 11// return true if op part of extra "accelerator" 12bool ggml_cpu_extra_compute_forward (struct ggml_compute_params * params ,struct ggml_tensor * op ); 13bool ggml_cpu_extra_work_size (int n_threads ,const struct ggml_tensor * op ,size_t * size ); 14 15#ifdef __cplusplus 16} 17 18namespace ggml ::cpu { 19// register in tensor->extra 20class tensor_traits { 21public : 22virtual ~tensor_traits (); 23virtual bool work_size (int n_threads ,const struct ggml_tensor * op ,size_t & size )= 0 ; 24virtual bool compute_forward (struct ggml_compute_params * params ,struct ggml_tensor * op )= 0 ; 25}; 26 27class extra_buffer_type { 28public : 29virtual ~extra_buffer_type (); 30virtual bool supports_op (ggml_backend_dev_t dev ,const struct ggml_tensor * op )= 0 ; 31virtual tensor_traits * get_tensor_traits (const struct ggml_tensor * op )= 0 ; 32}; 33}// namespace ggml::cpu 34 35// implemented in ggml-cpu.cpp. 36std ::vector < ggml_backend_buffer_type_t > & ggml_backend_cpu_get_extra_buffer_types (); 37 38#endif