program_guard¶
- paddle.static. program_guard ( main_program, startup_program=None ) [source]
-
- Api_attr
-
Static Graph
Change the global main program and startup program with
with
statement. Layer functions in the Pythonwith
block will append operators and Tensors to the new main programs.- Parameters
-
main_program (Program) – New main program inside
with
statement.startup_program (Program, optional) – New startup program inside
with
statement.None
means not changing startup program, default_startup_program is still used. Default: None.
Examples
import paddle paddle.enable_static() main_program = paddle.static.Program() startup_program = paddle.static.Program() with paddle.static.program_guard(main_program, startup_program): data = paddle.static.data(name='image', shape=[None, 784, 784], dtype='float32') hidden = paddle.static.nn.fc(x=data, size=10, activation='relu')
Notes: The temporary
Program
can be used if the user does not need to construct either of startup program or main program.Examples
import paddle paddle.enable_static() main_program = paddle.static.Program() # does not care about startup program. Just pass a temporary value. with paddle.static.program_guard(main_program, paddle.static.Program()): data = paddle.static.data(name='image', shape=[None, 784, 784], dtype='float32')