5.2. PopTorch Geometric

3.3.0

New features

  • Upgraded supported torch version from 1.13.1 to 2.0.1.

  • Added support for the following PyTorch Geometric operators: * SortAggregation * QuantileAggregation * MedianAggregation * MFConv * ClusterGCNConv * knn_graph * to_dense_batch * HypergraphConv * SplineBasis and SplineWeighting to support PyTorch Geometric SplineConv

  • Added support for PyTorch Geometric HeteroLinear and normalization layers.

  • Added batch_size argument to avg_pool_x and max_pool_x functions to avoid reading IPU tensor.

  • PopTorch now uses ONNX 11 by default.

  • FixedSizeDataLoader improvements:

    • Added support for a FixedSizeOptions object which can be initialised from an existing dataset or data loader.

    • Added support for different fixed-size strategies. Currently supports pad-to-max and stream packing strategies.

    • Added support for custom samplers.

    • Added support for all arguments used by torch_geometric.DataLoader, which this class is a drop-in replacement for.

  • Added support for FixedSizeNeighborLoader.

See the supported operations chapter in the PopTorch Geometric documentation for full details of the supported operations.

Bug Fixes

  • Fixed PowerMeanAggregation layer by changing power layer gradient calculations.

  • Fixed support for torch_geometric.Batch in PopTorch which required poptorch_geometric import.

  • Fixed error in node/edge stores of HeteroData object when using fixed-size loader.

Other improvements

None

Known issues

None

Compatibility changes

  • Renamed FixedBatchSampler to StreamPackingSampler.

  • FixedBatchSampler now uses SequentialSampler as the default sampler. Previously the default was RandomSampler.

poptorch_geometric

torch

torchvision

torchaudio

python

3.3

2.0.1

0.15.2

2.0.1

>= 3.8

3.2

1.13.1

0.14.1

0.13.1

>= 3.7

3.2.0

Initial release of PopTorch Geometric. See PyTorch Geometric for the IPU: User Guide for more information.

Warning

This release of PopTorch Geometric is experimental. Not all features of PyTorch Geometric are supported, and some functions may not work as expected. The implementation may change without warning in future releases in ways that are not backwards compatible.

Examples demonstrating different ways of using PopTorch Geometric are available in the Graphcore examples repository on GitHub.

There are also easy-to-follow tutorials in the form of notebooks showing how to use PopTorch Geometric to fully utilize the IPU systems available in the PyTorch Geometric tutorials directory in the Graphcore GitHub examples repository.