MCPcopy Create free account
hub / github.com/PaddlePaddle/Serving / deinit

Method deinit

core/predictor/framework/dag.cpp:35–66  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

33Dag::~Dag() { deinit(); }
34
35int Dag::deinit() {
36 for (std::vector<DagStage*>::iterator iter = _stages.begin();
37 iter != _stages.end();
38 ++iter) {
39 if (*iter != NULL) {
40 delete *iter;
41 }
42 }
43 _stages.clear();
44
45 for (std::vector<DagNode*>::iterator iter = _index_nodes.begin();
46 iter != _index_nodes.end();
47 ++iter) {
48 DagNode* node = *iter;
49 if (node != NULL) {
50 void* conf = node->conf;
51 if (conf != NULL) {
52 Op* op = OpRepository::instance().get_op(node->type);
53 if (op == NULL) {
54 LOG(ERROR) << "Failed to get_op, op type[" << node->type << "]";
55 return -1;
56 }
57 op->delete_config(conf);
58 OpRepository::instance().return_op(node->type, op);
59 }
60 delete node;
61 }
62 }
63 _index_nodes.clear();
64 _name_nodes.clear();
65 return 0;
66}
67
68EdgeMode Dag::parse_mode(std::string& mode) {
69 if (mode == "RO") {

Callers 1

return_dag_viewMethod · 0.45

Calls 6

beginMethod · 0.80
endMethod · 0.45
clearMethod · 0.45
get_opMethod · 0.45
delete_configMethod · 0.45
return_opMethod · 0.45

Tested by

no test coverage detected