Fix some build breakage due to de-std::unique_ptr cleanup.

PiperOrigin-RevId: 212347506
This commit is contained in:
A. Unique TensorFlower 2018-09-10 15:35:18 -07:00 committed by TensorFlower Gardener
parent 5b4e922701
commit e6cce55e57
3 changed files with 24 additions and 26 deletions

View File

@ -37,21 +37,20 @@ int main(int argc, char** argv) {
xla::LocalClient* client(xla::ClientLibrary::LocalClientOrDie()); xla::LocalClient* client(xla::ClientLibrary::LocalClientOrDie());
// Transfer parameters. // Transfer parameters.
std::unique_ptr<xla::Literal> param0_literal = xla::Literal param0_literal =
xla::LiteralUtil::CreateR1<float>({1.1f, 2.2f, 3.3f, 5.5f}); xla::LiteralUtil::CreateR1<float>({1.1f, 2.2f, 3.3f, 5.5f});
std::unique_ptr<xla::GlobalData> param0_data = std::unique_ptr<xla::GlobalData> param0_data =
client->TransferToServer(*param0_literal).ConsumeValueOrDie(); client->TransferToServer(param0_literal).ConsumeValueOrDie();
std::unique_ptr<xla::Literal> param1_literal = xla::Literal param1_literal = xla::LiteralUtil::CreateR2<float>(
xla::LiteralUtil::CreateR2<float>(
{{3.1f, 4.2f, 7.3f, 9.5f}, {1.1f, 2.2f, 3.3f, 4.4f}}); {{3.1f, 4.2f, 7.3f, 9.5f}, {1.1f, 2.2f, 3.3f, 4.4f}});
std::unique_ptr<xla::GlobalData> param1_data = std::unique_ptr<xla::GlobalData> param1_data =
client->TransferToServer(*param1_literal).ConsumeValueOrDie(); client->TransferToServer(param1_literal).ConsumeValueOrDie();
// Build computation. // Build computation.
xla::XlaBuilder builder(""); xla::XlaBuilder builder("");
auto p0 = Parameter(&builder, 0, param0_literal->shape(), "param0"); auto p0 = Parameter(&builder, 0, param0_literal.shape(), "param0");
auto p1 = Parameter(&builder, 1, param1_literal->shape(), "param1"); auto p1 = Parameter(&builder, 1, param1_literal.shape(), "param1");
Add(p1, p0, {0}); Add(p1, p0, {0});
xla::StatusOr<xla::XlaComputation> computation_status = builder.Build(); xla::StatusOr<xla::XlaComputation> computation_status = builder.Build();
@ -59,17 +58,16 @@ int main(int argc, char** argv) {
// Execute and transfer result of computation. // Execute and transfer result of computation.
xla::ExecutionProfile profile; xla::ExecutionProfile profile;
xla::StatusOr<std::unique_ptr<xla::Literal>> result = xla::StatusOr<xla::Literal> result = client->ExecuteAndTransfer(
client->ExecuteAndTransfer(
computation, computation,
/*arguments=*/{param0_data.get(), param1_data.get()}, /*arguments=*/{param0_data.get(), param1_data.get()},
/*execution_options=*/nullptr, /*execution_options=*/nullptr,
/*execution_profile=*/&profile); /*execution_profile=*/&profile);
std::unique_ptr<xla::Literal> actual = result.ConsumeValueOrDie(); xla::Literal actual = result.ConsumeValueOrDie();
LOG(INFO) << absl::StrFormat("computation took %dns", LOG(INFO) << absl::StrFormat("computation took %dns",
profile.compute_time_ns()); profile.compute_time_ns());
LOG(INFO) << actual->ToString(); LOG(INFO) << actual.ToString();
return 0; return 0;
} }

View File

@ -40,8 +40,8 @@ int main(int argc, char **argv) {
xla::LiteralProto literal_proto; xla::LiteralProto literal_proto;
TF_CHECK_OK(tensorflow::ReadBinaryProto(tensorflow::Env::Default(), argv[1], TF_CHECK_OK(tensorflow::ReadBinaryProto(tensorflow::Env::Default(), argv[1],
&literal_proto)); &literal_proto));
std::unique_ptr<xla::Literal> literal = xla::Literal literal =
xla::Literal::CreateFromProto(literal_proto).ConsumeValueOrDie(); xla::Literal::CreateFromProto(literal_proto).ConsumeValueOrDie();
LOG(INFO) << "literal: " << literal_proto.ShortDebugString(); LOG(INFO) << "literal: " << literal_proto.ShortDebugString();
fprintf(stderr, "%s\n", literal->ToString().c_str()); fprintf(stderr, "%s\n", literal.ToString().c_str());
} }

View File

@ -36,16 +36,16 @@ int main(int argc, char **argv) {
LOG(QFATAL) << "Usage: " << argv[0] << " <path-to-serialized-literal-text>"; LOG(QFATAL) << "Usage: " << argv[0] << " <path-to-serialized-literal-text>";
} }
std::unique_ptr<xla::Literal> literal = xla::Literal literal =
xla::TextLiteralReader::ReadPath(argv[1]).ConsumeValueOrDie(); xla::TextLiteralReader::ReadPath(argv[1]).ConsumeValueOrDie();
LOG(INFO) << "literal: " << *literal; LOG(INFO) << "literal: " << literal;
fprintf(stderr, "%s\n", literal->ToString().c_str()); fprintf(stderr, "%s\n", literal.ToString().c_str());
if (literal->shape().element_type() == xla::F32) { if (literal.shape().element_type() == xla::F32) {
float min = *std::min_element(literal->data<float>().begin(), float min = *std::min_element(literal.data<float>().begin(),
literal->data<float>().end()); literal.data<float>().end());
float max = *std::max_element(literal->data<float>().begin(), float max = *std::max_element(literal.data<float>().begin(),
literal->data<float>().end()); literal.data<float>().end());
fprintf(stderr, "min: %a=%f\n", min, min); fprintf(stderr, "min: %a=%f\n", min, min);
fprintf(stderr, "max: %a=%f\n", max, max); fprintf(stderr, "max: %a=%f\n", max, max);
} }