MCPcopy Create free account
hub / github.com/DeepRec-AI/DeepRec / main

Function main

tensorflow/compiler/xla/service/cpu/sample_harness.cc:34–73  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

32#include "tensorflow/core/platform/logging.h"
33
34int main(int argc, char** argv) {
35 tensorflow::port::InitMain(argv[0], &argc, &argv);
36
37 xla::LocalClient* client(xla::ClientLibrary::LocalClientOrDie());
38
39 // Transfer parameters.
40 xla::Literal param0_literal =
41 xla::LiteralUtil::CreateR1<float>({1.1f, 2.2f, 3.3f, 5.5f});
42 std::unique_ptr<xla::GlobalData> param0_data =
43 client->TransferToServer(param0_literal).ConsumeValueOrDie();
44
45 xla::Literal param1_literal = xla::LiteralUtil::CreateR2<float>(
46 {{3.1f, 4.2f, 7.3f, 9.5f}, {1.1f, 2.2f, 3.3f, 4.4f}});
47 std::unique_ptr<xla::GlobalData> param1_data =
48 client->TransferToServer(param1_literal).ConsumeValueOrDie();
49
50 // Build computation.
51 xla::XlaBuilder builder("");
52 auto p0 = Parameter(&builder, 0, param0_literal.shape(), "param0");
53 auto p1 = Parameter(&builder, 1, param1_literal.shape(), "param1");
54 Add(p1, p0, {0});
55
56 xla::StatusOr<xla::XlaComputation> computation_status = builder.Build();
57 xla::XlaComputation computation = computation_status.ConsumeValueOrDie();
58
59 // Execute and transfer result of computation.
60 xla::ExecutionProfile profile;
61 xla::StatusOr<xla::Literal> result = client->ExecuteAndTransfer(
62 computation,
63 /*arguments=*/{param0_data.get(), param1_data.get()},
64 /*execution_options=*/nullptr,
65 /*execution_profile=*/&profile);
66 xla::Literal actual = result.ConsumeValueOrDie();
67
68 LOG(INFO) << absl::StrFormat("computation took %dns",
69 profile.compute_time_ns());
70 LOG(INFO) << actual.ToString();
71
72 return 0;
73}

Callers

nothing calls this directly

Calls 10

ConsumeValueOrDieMethod · 0.80
InitMainFunction · 0.50
ParameterFunction · 0.50
AddClass · 0.50
TransferToServerMethod · 0.45
shapeMethod · 0.45
BuildMethod · 0.45
ExecuteAndTransferMethod · 0.45
getMethod · 0.45
ToStringMethod · 0.45

Tested by

no test coverage detected