You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**gcn_conv.py**: This file implements a 3D tensor-parallel version of the `GCNConv` layer, a fundamental component in Graph Convolutional Networks.
4
+
5
+
-**cross_entropy.py**: This file provides a parallel implementation of the cross-entropy loss function, a standard loss function used for node-level classification.
6
+
7
+
-**utils/**: This subdirectory contains several utility modules that provide essential functionalities for the Plexus framework:
8
+
9
+
-**general.py**: This module includes generic utility functions used throughout the framework, including the following.
10
+
- setting s random seed for reproducible experiments.
11
+
- padfinh a number to make it divisible by another number, which is helpful when sharding.
12
+
- functions for retrieving process group information
13
+
- functions for printing timing information
14
+
15
+
-**dataset.py**: This module provides utilities for preprocessing graph datasets. Key functions include:
16
+
-`preprocess_graph()`: Preprocesses a graph dataset. This includes normalizing features and the adjacency matrix, and applying the double permutation scheme specific to Plexus. It is recommended to use the `set_seed` function from `general.py` before calling this function, as random initialization is used for features in datasets that do not originally contain them.
17
+
-`partition_graph_2d()`: Statically 2D partitions a preprocessed graph, creating an individual file for each 2D matrix partition. This allows for distributing the data across multiple devices, preventing each GPU from having to load the entire dataset.
18
+
- Other utility functions for data conversion and manipulation.
19
+
20
+
-**dataloader.py**: This module contains the `DataLoader` class, which is responsible for efficiently loading preprocessed graph data. The `DataLoader` supports two modes:
- Loading partitioned data generated by the `partition_graph_2d()` function. In this case, the `DataLoader` automatically determines which files to load for each GPU and extracts the relevant data shards.
-**gcn_conv.py**: This file implements a 3D tensor-parallel version of the `GCNConv` layer, a fundamental component in Graph Convolutional Networks.
4
+
5
+
-**cross_entropy.py**: This file provides a parallel implementation of the cross-entropy loss function, a standard loss function used for node-level classification.
6
+
7
+
-**utils/**: This subdirectory contains several utility modules that provide essential functionalities for the Plexus framework:
8
+
9
+
-**general.py**: This module includes generic utility functions used throughout the framework, including the following.
10
+
- setting s random seed for reproducible experiments.
11
+
- padfinh a number to make it divisible by another number, which is helpful when sharding.
12
+
- functions for retrieving process group information
13
+
- functions for printing timing information
14
+
15
+
-**dataset.py**: This module provides utilities for preprocessing graph datasets. Key functions include:
16
+
-`preprocess_graph()`: Preprocesses a graph dataset. This includes normalizing features and the adjacency matrix, and applying the double permutation scheme specific to Plexus. It is recommended to use the `set_seed` function from `general.py` before calling this function, as random initialization is used for features in datasets that do not originally contain them.
17
+
-`partition_graph_2d()`: Statically 2D partitions a preprocessed graph, creating an individual file for each 2D matrix partition. This allows for distributing the data across multiple devices, preventing each GPU from having to load the entire dataset.
18
+
- Other utility functions for data conversion and manipulation.
19
+
20
+
-**dataloader.py**: This module contains the `DataLoader` class, which is responsible for efficiently loading preprocessed graph data. The `DataLoader` supports two modes:
- Loading partitioned data generated by the `partition_graph_2d()` function. In this case, the `DataLoader` automatically determines which files to load for each GPU and extracts the relevant data shards.
0 commit comments