e3j.utils.options.GraphOrdering

class e3j.utils.options.GraphOrdering

Edge ordering contract for the fused CUDA Convolution.

Values:
  • RECEIVER – Edges sorted by receiver index. The forward pass can then use the CSR adjacency directly to aggregate messages, while the backward pass needs to transpose edges.

  • SENDER – Edges sorted by sender index. The forward pass will leverage symmetry assumptions on the graph and edge features, while the backward pass can naturally aggregate cotangents using the CSR adjacency matrix. See Convolution.

  • NONE – Use this flag in combination with Convolution.UNFUSED option as fallback when no explicit edge ordering is enforced.

Methods

parse(key)

parse_value(key)

__getitem__(name)

Return the member matching name.

__iter__()

Return members in definition order.

__len__()

Return the number of members (no aliases)

Attributes

RECEIVER

SENDER

NONE