5.9. PopART
3.2.0
New features
Removed dependency on
snap
library. The relatedpopart::PopOpx
class has been removed. See Compatibility changes for more information.Add support for scatter reduction
mul
operation.
Bug Fixes
Modify the PopART implementation of
scatterreduce
to match the PyTorchscatter_reduce
implementation on the CPU.
Other improvements
Add support for grouped
gather
operations.Add support for grouped
scatterreduce
operations.Use
multiUpdate
instead ofscatter
intopk
gradient implementation (improves performance fortorch.max
).To save memory, prevent weight duplication for inference. The weight tensor can be treated as a constant for inference.
Add
useLoopCandidateCreator
for weights shared by loop operators and non-loop operators, in order to optimize the layout.
Known issues
None
Compatibility changes
The
popart::PopOpx
class has been removed. Please change your custom ops to inherit frompopart::Opx
instead.
3.1.0
New features
Added error trap if attempting to use a non-contiguous NumPy array to copy tensors off the device.
Added support for negative axes to the
Split
andSlice
ops.Added support for steps > 1 and steps < -1 to the
Slice
op.Added support to the
Resize
op for both scales and sizes inputs (one of the two tensors is empty).Added float16 support to
cumsum
.Added support for custom transforms (experimental).
Bug Fixes
Fixed potential hang in device detach.
Other improvements
Load Poplar executable files lazily if they are named with a hash.
Known issues
None
Compatibility changes
The
popart::PopOpx
class has been marked as deprecated. Please change your custom ops to inherit frompopart::Opx
instead. Thepopart::PopOpx
class will likely be removed in the next release.