I’m sure there’s a huge range, but what kind / what sizes of data do you see attached to vertices and edges? In the academic world, we rarely have more than, say, something like a weight (float) per edge, but I can imagine in practice, there might be much larger / much more interesting auxiliary data.
Data attached to a graph
We support any type of data, from simple integers to full tensors.
Our algorithm is generic enough to support all kind of edge and node properties and multiple properties at the same time.
Is that data stored separately from the connectivity information? What kind of data structure do you use for attached data?
In the generic case, data is typically stored in dataframes such as cudf or dask_cudf. If this is edge data, then connectivity is typically provided with src id and dst id, which follows the familiar “SRO” model (source, relation, object). cuGraph also natively supports additional edge properties such as weight, edge id, and edge type. We also offer a property graph, which can store both features and connectivity prior to extracting a structural cugraph graph to run various algorithms on.
For GNNs specifically, we recommend using our feature store that can efficiently store tensors.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.