diff --git a/paddle/scripts/paddle_build.sh b/paddle/scripts/paddle_build.sh index 26b26c9b1faf7bd976b57f1320bff878f1a21770..33e0ec4ee226126374413382fe8fcbdebdf50f9e 100755 --- a/paddle/scripts/paddle_build.sh +++ b/paddle/scripts/paddle_build.sh @@ -444,6 +444,7 @@ function assert_api_spec_approvals() { "paddle/fluid/framework/ir/node.h" "paddle/fluid/framework/ir/graph.h" "paddle/fluid/framework/framework.proto" + "python/paddle/fluid/compiler.py" "paddle/fluid/operators/distributed/send_recv.proto.in") for API_FILE in ${API_FILES[*]}; do API_CHANGE=`git diff --name-only upstream/$BRANCH | grep "${API_FILE}" || true` diff --git a/python/paddle/fluid/compiler.py b/python/paddle/fluid/compiler.py index d7975fe88612305dfb9326eed4b666c486034924..b1c7bf29c2c7138b7c83d46e15e166aa836997c7 100644 --- a/python/paddle/fluid/compiler.py +++ b/python/paddle/fluid/compiler.py @@ -136,7 +136,7 @@ class CompiledProgram(object): Returns: self """ - assert not self._is_data_parallel, "Cannot compile both data parallel and inference." + assert not self._is_data_parallel, "Cannot compile both data parallel and inference" assert not self._is_inference, "Already compiled with inference" assert any([ @@ -218,13 +218,12 @@ class CompiledProgram(object): places = list(map(_place_obj, self._places)) - pe = core.ParallelExecutor( + return core.ParallelExecutor( places, set(self._persistable_vars), cpt.to_text(self._loss_name) if self._loss_name else six.u(''), self._scope, self._local_scopes, self._exec_strategy, self._build_strategy, self._graph) - return pe def _compile_inference(self): return core.create_paddle_predictor(self._infer_config) diff --git a/python/paddle/fluid/executor.py b/python/paddle/fluid/executor.py index d0cdb73841c66bde5f2fd041c1b52dcc7e8ca48c..c0191a34deaa5ab3b53b5fe4f33cb5449a2db8b3 100644 --- a/python/paddle/fluid/executor.py +++ b/python/paddle/fluid/executor.py @@ -538,6 +538,7 @@ class Executor(object): else: # TODO(panyx0718): Can compile program to optimize executor # performance. + # TODO(panyx0718): executor should be able to run graph. assert program._program, "CompiledProgram is compiled from graph, can only run with_data_parallel." return self._run( program._program,