message: [XLA] Produce fake args using one computation, not N.
  This is much faster to compile.
diff: @@ -98,14 +98,13 @@ std::vector<std::unique_ptr<GlobalData>> MakeFakeArgumentsOrDie(
  << "Computation should have progran shape.";
  auto program_shape = computation.proto().program_shape();
  - // For every (unbound) parameter that the computation wants, we manufacture
  - // some arbitrary data so that we can invoke the computation.
  - std::vector<std::unique_ptr<GlobalData>> fake_arguments;
  - for (const Shape& parameter : program_shape.parameters()) {
  - fake_arguments.push_back(MakeFakeDataOrDie(parameter, client));
  - }
  -
  - return fake_arguments;
  + // Create and run a program which produces a tuple with one element per
  + // parameter, then return the tuple's constituent buffers.
  + std::vector<Shape> param_shapes(program_shape.parameters().begin(),
  + program_shape.parameters().end());
  + auto fake_input_tuple =
  + MakeFakeDataOrDie(ShapeUtil::MakeTupleShape(param_shapes), client);
  + return client->DeconstructTuple(*fake_input_tuple).ValueOrDie();
  }
  } // namespace xla
  