rpc : add check for rpc buffer type (llama/18242)
This commit is contained in:
parent
e4c89612cd
commit
9bdd4658f4
|
|
@ -571,6 +571,10 @@ static void * ggml_backend_rpc_buffer_get_base(ggml_backend_buffer_t buffer) {
|
||||||
return ctx->base_ptr;
|
return ctx->base_ptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool ggml_backend_buffer_is_rpc(ggml_backend_buffer_t buffer) {
|
||||||
|
return buffer->iface.free_buffer == ggml_backend_rpc_buffer_free_buffer;
|
||||||
|
}
|
||||||
|
|
||||||
static rpc_tensor serialize_tensor(const ggml_tensor * tensor) {
|
static rpc_tensor serialize_tensor(const ggml_tensor * tensor) {
|
||||||
rpc_tensor result;
|
rpc_tensor result;
|
||||||
if (!tensor) {
|
if (!tensor) {
|
||||||
|
|
@ -580,7 +584,7 @@ static rpc_tensor serialize_tensor(const ggml_tensor * tensor) {
|
||||||
|
|
||||||
result.id = reinterpret_cast<uint64_t>(tensor);
|
result.id = reinterpret_cast<uint64_t>(tensor);
|
||||||
result.type = tensor->type;
|
result.type = tensor->type;
|
||||||
if (tensor->buffer) {
|
if (tensor->buffer && ggml_backend_buffer_is_rpc(tensor->buffer)) {
|
||||||
ggml_backend_buffer_t buffer = tensor->buffer;
|
ggml_backend_buffer_t buffer = tensor->buffer;
|
||||||
ggml_backend_rpc_buffer_context * ctx = (ggml_backend_rpc_buffer_context *)buffer->context;
|
ggml_backend_rpc_buffer_context * ctx = (ggml_backend_rpc_buffer_context *)buffer->context;
|
||||||
result.buffer = ctx != nullptr ? ctx->remote_ptr : 0;
|
result.buffer = ctx != nullptr ? ctx->remote_ptr : 0;
|
||||||
|
|
@ -664,10 +668,6 @@ static void ggml_backend_rpc_buffer_get_tensor(ggml_backend_buffer_t buffer, con
|
||||||
RPC_STATUS_ASSERT(status);
|
RPC_STATUS_ASSERT(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool ggml_backend_buffer_is_rpc(ggml_backend_buffer_t buffer) {
|
|
||||||
return buffer->iface.free_buffer == ggml_backend_rpc_buffer_free_buffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
static bool ggml_backend_rpc_buffer_cpy_tensor(ggml_backend_buffer_t buffer, const ggml_tensor * src, ggml_tensor * dst) {
|
static bool ggml_backend_rpc_buffer_cpy_tensor(ggml_backend_buffer_t buffer, const ggml_tensor * src, ggml_tensor * dst) {
|
||||||
if (ggml_backend_buffer_is_rpc(src->buffer)) {
|
if (ggml_backend_buffer_is_rpc(src->buffer)) {
|
||||||
// check if src and dst are on the same server
|
// check if src and dst are on the same server
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue