| 939 | |
| 940 | #ifndef LITE_ON_TINY_PUBLISH |
| 941 | void LoadModelNaiveV0FromMemory(const std::string &model_buffer, |
| 942 | Scope *scope, |
| 943 | cpp::ProgramDesc *cpp_prog) { |
| 944 | // Offset |
| 945 | uint16_t meta_version_tmp; |
| 946 | model_parser::StringBufferReader reader(model_buffer); |
| 947 | reader.Read(&meta_version_tmp, sizeof(uint16_t)); |
| 948 | |
| 949 | // (2)get opt version |
| 950 | char opt_version[16]; |
| 951 | const uint64_t paddle_version_length = 16 * sizeof(char); |
| 952 | reader.Read(opt_version, paddle_version_length); |
| 953 | VLOG(4) << "Opt_version:" << static_cast<const char *>(opt_version); |
| 954 | |
| 955 | // (3)get topo_size and topo_data |
| 956 | uint64_t topo_size; |
| 957 | reader.Read(&topo_size, sizeof(uint64_t)); |
| 958 | naive_buffer::BinaryTable table; |
| 959 | table.LoadFromMemory(model_buffer.c_str() + reader.current(), topo_size); |
| 960 | |
| 961 | naive_buffer::proto::ProgramDesc nb_proto_prog(&table); |
| 962 | nb_proto_prog.Load(); |
| 963 | naive_buffer::ProgramDesc nb_prog(&nb_proto_prog); |
| 964 | |
| 965 | // Transform to cpp::ProgramDesc |
| 966 | TransformProgramDescAnyToCpp(nb_prog, cpp_prog); |
| 967 | |
| 968 | // Load Params |
| 969 | // NOTE: Only main block be used now. |
| 970 | // only combined Params are supported in Loading Model from memory |
| 971 | LoadCombinedParamsNaive( |
| 972 | model_buffer, reader.current() + topo_size, scope, *cpp_prog, true); |
| 973 | |
| 974 | VLOG(4) << "Load model from naive buffer memory successfully"; |
| 975 | } |
| 976 | #endif |
| 977 | /////////////////////////////////////////////////////////////////// |
| 978 | // Meta_version=1,2 |
no test coverage detected