dgl.distributed.rst 2.51 KB
Newer Older
1
2
3
4
5
.. _api-distributed:

dgl.distributed
=================================

6
7
8
9
10
11
12
13
14
15
16
17
18
19
.. currentmodule:: dgl.distributed

DGL distributed module contains classes and functions to support
distributed Graph Neural Network training and inference on a cluster of
machines.

This includes a few submodules:

* distributed data structures including distributed graph, distributed tensor
  and distributed embeddings.
* distributed sampling.
* distributed workload split at runtime.
* graph partition.

20
21
22
23
24
25
26
27
28
29
30
31
32

Initialization
---------------

.. autosummary::
    :toctree: ../../generated/

    initialize

Distributed Graph
-----------------

.. autoclass:: DistGraph
33
    :members: ndata, edata, idtype, device, ntypes, etypes, number_of_nodes, number_of_edges, node_attr_schemes, edge_attr_schemes, rank, find_edges, get_partition_book, barrier, local_partition, num_nodes, num_edges, get_node_partition_policy, get_edge_partition_policy, get_etype_id, get_ntype_id, nodes, edges, out_degrees, in_degrees
34
35
36
37
38
39
40

Distributed Tensor
------------------

.. autoclass:: DistTensor
    :members: part_policy, shape, dtype, name

41
Distributed Node Embedding
42
43
---------------------

44
.. autoclass:: DistEmbedding
45
46
47
48


Distributed embedding optimizer
-------------------------
49

50
.. autoclass:: dgl.distributed.optim.SparseAdagrad
51
    :members: step, save, load
52

53
.. autoclass:: dgl.distributed.optim.SparseAdam
54
    :members: step, save, load
55

56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
Distributed workload split
--------------------------

.. autosummary::
    :toctree: ../../generated/

    node_split
    edge_split

Distributed Sampling
--------------------

Distributed DataLoader
``````````````````````

.. autoclass:: DistDataLoader

73
74
75
.. _api-distributed-sampling-ops:
Distributed Graph Sampling Operators
```````````````````````````````````````
76
77
78
79
80

.. autosummary::
    :toctree: ../../generated/

    sample_neighbors
81
    sample_etype_neighbors
82
83
84
85
86
87
88
89
90
91
    find_edges
    in_subgraph

Partition
---------

Graph partition book
````````````````````

.. autoclass:: GraphPartitionBook
92
    :members: shared_memory, num_partitions, metadata, nid2partid, eid2partid, partid2nids, partid2eids, nid2localnid, eid2localeid, partid, map_to_per_ntype, map_to_per_etype, map_to_homo_nid, map_to_homo_eid, canonical_etypes
93
94
95
96

.. autoclass:: PartitionPolicy
    :members: policy_str, part_id, partition_book, to_local, to_partid, get_part_size, get_size

97
98
Split and Load Partitions
````````````````````````````
99
100
101
102
103

.. autosummary::
    :toctree: ../../generated/

    load_partition
104
    load_partition_feats
105
106
    load_partition_book
    partition_graph
107
    dgl_partition_to_graphbolt