[XLA:GPU] Pass all four args to custom-call convs when they're created.
authorJustin Lebar <jlebar@google.com>
Thu, 12 Apr 2018 23:56:45 +0000 (16:56 -0700)
committerTensorFlower Gardener <gardener@tensorflow.org>
Fri, 13 Apr 2018 00:00:34 +0000 (17:00 -0700)
commit5f7929b8c340b579f859396677c17f010f94d984
tree2cd0785d7f0623a4cc9e4405752183a8e7e7ba84
parent5d442bea19fd8f7f945248fb55f1ca2a6f6205c5
[XLA:GPU] Pass all four args to custom-call convs when they're created.

A custom-call-conv should have four arguments: lhs, rhs, algorithm, and
use-tensor-cores.  CudnnAlgorithmPicker did the right thing, and that
path is exercised 99% of the time.  But CudnnAlgorithmPicker can fail,
and if it does, we're stuck with whatever we had before.  What we had
before only had three of the four args, which is bad.

In addition to fixing it, added an e2e test that catches the bug.

PiperOrigin-RevId: 192694119
tensorflow/compiler/xla/service/gpu/ir_emission_utils.cc
tensorflow/compiler/xla/tests/convolution_test.cc