@@ -93,12 +93,6 @@ class ListenAndServOp : public framework::OperatorBase {
9393 " server program should have at least 2 blocks" );
9494
9595 framework::Executor executor (dev_place);
96- std::vector<framework::ExecutorPrepareContext *> blk_ctx_list;
97- blk_ctx_list.push_back (nullptr ); // block0 is not used.
98- for (int blkid = 1 ; blkid < num_blocks; ++blkid) {
99- auto *exe_ctx = executor.Prepare (*program, blkid);
100- blk_ctx_list.push_back (exe_ctx);
101- }
10296
10397 // TODO(typhoonzero): change this to a while_op for every cluster-batch.
10498 bool exit_flag = false ;
@@ -149,12 +143,11 @@ class ListenAndServOp : public framework::OperatorBase {
149143 std::vector<std::future<void >> fs;
150144 // block0 contains only listen_and_serv op, start run from block1.
151145 for (int blkid = 1 ; blkid < num_blocks - 1 ; ++blkid) {
152- fs.push_back (framework::Async (
153- [&executor, &program, &recv_scope, &blk_ctx_list , blkid]() {
146+ fs.push_back (
147+ framework::Async ( [&executor, &program, &recv_scope, blkid]() {
154148 int run_block = blkid; // thread local
155149 try {
156- executor.RunPreparedContext (blk_ctx_list[run_block],
157- &recv_scope, false , false );
150+ executor.Run (*program, &recv_scope, run_block, false , false );
158151 } catch (std::exception &e) {
159152 LOG (ERROR) << " run sub program error " << e.what ();
160153 }
@@ -164,8 +157,7 @@ class ListenAndServOp : public framework::OperatorBase {
164157 // Run global block at final step, or block1 if there are only 2 blocks
165158 if (num_blocks >= 2 ) {
166159 try {
167- executor.RunPreparedContext (blk_ctx_list[num_blocks - 1 ], &recv_scope,
168- false , false );
160+ executor.Run (*program, &recv_scope, num_blocks - 1 , false , false );
169161 } catch (std::exception &e) {
170162 LOG (ERROR) << " run sub program error " << e.what ();
171163 }
@@ -185,9 +177,9 @@ class ListenAndServOp : public framework::OperatorBase {
185177 sparse_vars.clear ();
186178 } // while(true)
187179
188- for (int i = 0 ; i < num_blocks; ++i) {
189- delete blk_ctx_list[i];
190- }
180+ // for (int i = 0; i < num_blocks; ++i) {
181+ // delete blk_ctx_list[i];
182+ // }
191183 }
192184
193185 protected:
0 commit comments