@@ -14,6 +14,7 @@ limitations under the License. */
14
14
15
15
#include " paddle/fluid/inference/io.h"
16
16
17
+ #include < algorithm>
17
18
#include < fstream>
18
19
#include " paddle/fluid/framework/block_desc.h"
19
20
#include " paddle/fluid/framework/feed_fetch_type.h"
@@ -27,14 +28,14 @@ namespace inference {
27
28
// linking the inference shared library.
28
29
void Init (bool init_p2p) { framework::InitDevices (init_p2p); }
29
30
30
- void ReadBinaryFile (const std::string& filename, std::string& contents) {
31
+ void ReadBinaryFile (const std::string& filename, std::string* contents) {
31
32
std::ifstream fin (filename, std::ios::in | std::ios::binary);
32
33
PADDLE_ENFORCE (static_cast <bool >(fin), " Cannot open file %s" , filename);
33
34
fin.seekg (0 , std::ios::end);
34
- contents. clear ();
35
- contents. resize (fin.tellg ());
35
+ contents-> clear ();
36
+ contents-> resize (fin.tellg ());
36
37
fin.seekg (0 , std::ios::beg);
37
- fin.read (&contents[ 0 ] , contents. size ());
38
+ fin.read (&( contents-> at ( 0 )) , contents-> size ());
38
39
fin.close ();
39
40
}
40
41
@@ -47,7 +48,7 @@ bool IsPersistable(const framework::VarDesc* var) {
47
48
return false ;
48
49
}
49
50
50
- void LoadPersistables (framework::Executor& executor, framework::Scope& scope,
51
+ void LoadPersistables (framework::Executor* executor, framework::Scope* scope,
51
52
const framework::ProgramDesc& main_program,
52
53
const std::string& dirname,
53
54
const std::string& param_filename) {
@@ -92,18 +93,18 @@ void LoadPersistables(framework::Executor& executor, framework::Scope& scope,
92
93
op->CheckAttrs ();
93
94
}
94
95
95
- executor. Run (*load_program, & scope, 0 , true , true );
96
+ executor-> Run (*load_program, scope, 0 , true , true );
96
97
97
98
delete load_program;
98
99
}
99
100
100
- std::unique_ptr<framework::ProgramDesc> Load (framework::Executor& executor,
101
- framework::Scope& scope,
101
+ std::unique_ptr<framework::ProgramDesc> Load (framework::Executor* executor,
102
+ framework::Scope* scope,
102
103
const std::string& dirname) {
103
104
std::string model_filename = dirname + " /__model__" ;
104
105
std::string program_desc_str;
105
106
VLOG (3 ) << " loading model from " << model_filename;
106
- ReadBinaryFile (model_filename, program_desc_str);
107
+ ReadBinaryFile (model_filename, & program_desc_str);
107
108
108
109
std::unique_ptr<framework::ProgramDesc> main_program (
109
110
new framework::ProgramDesc (program_desc_str));
@@ -113,11 +114,11 @@ std::unique_ptr<framework::ProgramDesc> Load(framework::Executor& executor,
113
114
}
114
115
115
116
std::unique_ptr<framework::ProgramDesc> Load (
116
- framework::Executor& executor, framework::Scope& scope,
117
+ framework::Executor* executor, framework::Scope* scope,
117
118
const std::string& prog_filename, const std::string& param_filename) {
118
119
std::string model_filename = prog_filename;
119
120
std::string program_desc_str;
120
- ReadBinaryFile (model_filename, program_desc_str);
121
+ ReadBinaryFile (model_filename, & program_desc_str);
121
122
122
123
std::unique_ptr<framework::ProgramDesc> main_program (
123
124
new framework::ProgramDesc (program_desc_str));
0 commit comments