MCPcopy Index your code
hub / github.com/dmlc/dgl / SendMetaToBackupRequest

Class SendMetaToBackupRequest

python/dgl/distributed/kvstore.py:517–595  ·  view source on GitHub ↗

Send meta data to backup server and backup server will use this meta data to read shared-memory tensor. Parameters ---------- name : str data name dtype : str data type string shape : tuple of int data shape policy_str : str partition-poli

Source from the content-addressed store, hash-verified

515
516
517class SendMetaToBackupRequest(rpc.Request):
518 """Send meta data to backup server and backup server
519 will use this meta data to read shared-memory tensor.
520
521 Parameters
522 ----------
523 name : str
524 data name
525 dtype : str
526 data type string
527 shape : tuple of int
528 data shape
529 policy_str : str
530 partition-policy string, e.g., 'edge' or 'node'.
531 pull_handler : callable
532 The callback function when data is pulled from kvstore.
533 push_handler : callable
534 The callback function when data is pushed to kvstore.
535 """
536
537 def __init__(
538 self, name, dtype, shape, policy_str, pull_handler, push_handler
539 ):
540 self.name = name
541 self.dtype = dtype
542 self.shape = shape
543 self.policy_str = policy_str
544 self.pull_handler = pull_handler
545 self.push_handler = push_handler
546
547 def __getstate__(self):
548 return (
549 self.name,
550 self.dtype,
551 self.shape,
552 self.policy_str,
553 self.pull_handler,
554 self.push_handler,
555 )
556
557 def __setstate__(self, state):
558 (
559 self.name,
560 self.dtype,
561 self.shape,
562 self.policy_str,
563 self.pull_handler,
564 self.push_handler,
565 ) = state
566
567 def process_request(self, server_state):
568 kv_store = server_state.kv_store
569 assert kv_store.is_backup_server()
570 if self.name not in kv_store.data_store:
571 shared_data = empty_shared_mem(
572 self.name + "-kvdata-", False, self.shape, self.dtype
573 )
574 dlpack = shared_data.to_dlpack()

Callers 2

init_dataMethod · 0.85
map_shared_dataMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected