|
|
#pragma once |
|
|
|
|
|
#include "ggml.h" |
|
|
#include "ggml-backend.h" |
|
|
|
|
|
#ifdef __cplusplus |
|
|
extern "C" { |
|
|
#endif |
|
|
|
|
|
#define RPC_PROTO_MAJOR_VERSION 3 |
|
|
#define RPC_PROTO_MINOR_VERSION 0 |
|
|
#define RPC_PROTO_PATCH_VERSION 0 |
|
|
#define GGML_RPC_MAX_SERVERS 16 |
|
|
|
|
|
|
|
|
GGML_BACKEND_API ggml_backend_t ggml_backend_rpc_init(const char * endpoint, uint32_t device); |
|
|
GGML_BACKEND_API bool ggml_backend_is_rpc(ggml_backend_t backend); |
|
|
|
|
|
GGML_BACKEND_API ggml_backend_buffer_type_t ggml_backend_rpc_buffer_type(const char * endpoint, uint32_t device); |
|
|
|
|
|
GGML_BACKEND_API void ggml_backend_rpc_get_device_memory(const char * endpoint, uint32_t device, size_t * free, size_t * total); |
|
|
|
|
|
GGML_BACKEND_API void ggml_backend_rpc_start_server(const char * endpoint, const char * cache_dir, |
|
|
size_t n_threads, size_t n_devices, |
|
|
ggml_backend_dev_t * devices, size_t * free_mem, size_t * total_mem); |
|
|
|
|
|
GGML_BACKEND_API ggml_backend_reg_t ggml_backend_rpc_reg(void); |
|
|
GGML_BACKEND_API ggml_backend_reg_t ggml_backend_rpc_add_server(const char * endpoint); |
|
|
|
|
|
#ifdef __cplusplus |
|
|
} |
|
|
#endif |
|
|
|