MCPcopy Create free account
hub / github.com/MegEngine/MegEngine / test_metadata

Function test_metadata

src/serialization/test/serializer_oss.cpp:85–118  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

83}
84
85void test_metadata(GraphDumpFormat format) {
86 auto fname = GET_OUTPUT_FILE(format);
87 TensorShape shape{2, 3};
88
89 auto dump = [&]() {
90 auto cn = CompNode::load("xpu0");
91 auto host_x = std::make_shared<HostTensorND>(cn, shape),
92 host_y = std::make_shared<HostTensorND>(cn, shape);
93 auto graph = ComputingGraph::make();
94 auto x = opr::Host2DeviceCopy::make(*graph, host_x, {"x"}),
95 y = opr::Host2DeviceCopy::make(*graph, host_y, {"y"});
96 using Mode = opr::Elemwise::Mode;
97 auto z = opr::Elemwise::make({x, y}, Mode::ADD, {"add(x, y)"});
98
99 Metadata metadata;
100 metadata.user_info = "TEST_METADATA";
101 metadata.has_user_info = true;
102
103 auto dumper = GraphDumper::make(OutputFile::make_fs(fname.c_str()), format);
104 auto rst = dumper->dump({z.rename("z")}, {}, metadata);
105 };
106
107 auto load = [&]() {
108 HostTensorGenerator<> gen;
109 auto loader = GraphLoader::make(InputFile::make_fs(fname.c_str()), format);
110 auto rst = loader->load();
111 auto metadata = rst.metadata;
112 int cmp = strcmp(metadata.user_info.c_str(), "TEST_METADATA");
113 EXPECT_EQ(cmp, 0);
114 };
115
116 dump();
117 load();
118}
119
120void test_serializer_APlusB(GraphDumpFormat format) {
121 auto fname = GET_OUTPUT_FILE(format);

Callers 1

TESTFunction · 0.70

Calls 5

renameMethod · 0.80
loadFunction · 0.50
makeFunction · 0.50
dumpMethod · 0.45
loadMethod · 0.45

Tested by

no test coverage detected