@@ -181,7 +181,7 @@ struct ggml_backend_rpc_context {
181181
182182struct  ggml_backend_rpc_buffer_context  {
183183    std::shared_ptr<socket_t > sock;
184-     std::unordered_map< ggml_backend_buffer_t ,  void  *> base_cache ;
184+     void  * base_ptr ;
185185    uint64_t  remote_ptr;
186186};
187187
@@ -423,16 +423,15 @@ static void ggml_backend_rpc_buffer_free_buffer(ggml_backend_buffer_t buffer) {
423423
424424static  void  * ggml_backend_rpc_buffer_get_base (ggml_backend_buffer_t  buffer) {
425425    ggml_backend_rpc_buffer_context * ctx = (ggml_backend_rpc_buffer_context *)buffer->context ;
426-     if  (ctx->base_cache . find (buffer)  != ctx-> base_cache . end () ) {
427-         return  ctx->base_cache [buffer] ;
426+     if  (ctx->base_ptr  != nullptr ) {
427+         return  ctx->base_ptr ;
428428    }
429429    rpc_msg_buffer_get_base_req request = {ctx->remote_ptr };
430430    rpc_msg_buffer_get_base_rsp response;
431431    bool  status = send_rpc_cmd (ctx->sock , RPC_CMD_BUFFER_GET_BASE, &request, sizeof (request), &response, sizeof (response));
432432    GGML_ASSERT (status);
433-     void  * base_ptr = reinterpret_cast <void  *>(response.base_ptr );
434-     ctx->base_cache [buffer] = base_ptr;
435-     return  base_ptr;
433+     ctx->base_ptr  = reinterpret_cast <void  *>(response.base_ptr );
434+     return  ctx->base_ptr ;
436435}
437436
438437static  rpc_tensor serialize_tensor (const  ggml_tensor * tensor) {
@@ -557,7 +556,7 @@ static ggml_backend_buffer_t ggml_backend_rpc_buffer_type_alloc_buffer(ggml_back
557556    if  (response.remote_ptr  != 0 ) {
558557        ggml_backend_buffer_t  buffer = ggml_backend_buffer_init (buft,
559558            ggml_backend_rpc_buffer_interface,
560-             new  ggml_backend_rpc_buffer_context{sock, {} , response.remote_ptr },
559+             new  ggml_backend_rpc_buffer_context{sock, nullptr , response.remote_ptr },
561560            response.remote_size );
562561        return  buffer;
563562    } else  {
0 commit comments