MCPcopy Create free account
hub / github.com/Oneflow-Inc/oneflow / Serialize

Method Serialize

oneflow/core/hardware/node_device_descriptor.cpp:292–308  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

290}
291
292void NodeDeviceDescriptor::Serialize(std::string* serialized) const {
293 nlohmann::json json_object;
294 json_object[kJsonKeyHostMemorySize] = impl_->host_memory_size_bytes;
295 for (const auto& pair : impl_->class_name2descriptor_list) {
296 std::string serialized_descriptor_list;
297 auto clz = DeviceDescriptorClass::GetRegisteredClass(pair.first);
298 CHECK(clz);
299 clz->SerializeDeviceDescriptorList(pair.second, &serialized_descriptor_list);
300 json_object[kJsonKeyClasses].push_back(
301 {{kJsonKeyClassName, clz->Name()},
302 {kJsonKeySerializedDescriptorList, serialized_descriptor_list}});
303 }
304 std::string serialized_topology;
305 SerializeTopologyDescriptor(impl_->topology, &serialized_topology);
306 json_object[kJsonKeyTopology] = serialized_topology;
307 *serialized = json_object.dump();
308}
309
310void NodeDeviceDescriptor::DumpSummary(const std::string& path) const {
311 std::string classes_base = JoinPath(path, "classes");

Calls 4

push_backMethod · 0.80
NameMethod · 0.45

Tested by

no test coverage detected