5.3. TensorFlow 2

3.2.0

New features

None

Bug Fixes

None

Other improvements

  • Make TensorFlow for the IPU compatible with NumPy version 1.24.

Known issues

  • TensorFlow 2 IPUStrategy is initialised with the wrong number of replicas.

    When training a model with multiple replicas, this issue causes an optimizer to apply the sum of the gradients, instead of the mean, over all the replicas. A workaround is for the user to provide a gradient_transformer function to the optimizer that divides the gradients (after the sum-reduction across replicas) by the number of replicas being used.

    See, for example, the optimizer_factory module in our TensorFlow 2 CNN example.

  • The program can terminate unexpectedly if you provide a 0-dimensional Tensor to a tf.Dataset.

Compatibility changes

None

3.1.0

New features

  • Simplified public API for collectives.

Bug Fixes

None

Other improvements

Known issues

  • TensorFlow 2 IPUStrategy is initialised with the wrong number of replicas.

    When training a model with multiple replicas, this issue causes an optimizer to apply the sum of the gradients, instead of the mean, over all the replicas. A workaround is for the user to provide a gradient_transformer function to the optimizer that divides the gradients (after the sum-reduction across replicas) by the number of replicas being used.

    See, for example, the optimizer_factory module in our TensorFlow 2 CNN example.

  • The program can terminate unexpectedly if you provide a 0-dimensional Tensor to a tf.Dataset.

Compatibility changes

Compatibility changes are listed in the user guide Targeting the IPU from TensorFlow 2: