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')