Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/64727
the acc ops convertor for topk has a subtle bug (i found this while trying to introduce max/min)
the code does not differentiate between dim == None and dim ==0, but these are both different computations
Reviewed By: jfix71,
842974287
Differential Revision:
D30833621
fbshipit-source-id:
6cd84e6ca4e95bb1a6d6465e61830b76808a9c78
num_dims = len(input_val.shape) + (1 if network.has_implicit_batch_dimension else 0)
k = kwargs["k"]
- dim = (kwargs["dim"] if kwargs["dim"] else -1) % num_dims
+ dim = (kwargs["dim"] if kwargs["dim"] is not None else -1) % num_dims
operation = trt.TopKOperation.MAX if kwargs["largest"] else trt.TopKOperation.MIN
layer = network.add_topk(
input_val, operation, k, get_axes_for_reduce_op(dim, network.has_implicit_batch_dimension)