CompiledProgram¶
- api_attr
声明式编程(静态图)专用API
CompiledProgram根据 build_strategy 的配置将输入的Program或Graph进行转换和优化,例如:计算图中算子融合、计算图执行过程中开启内存/显存优化等,关于build_strategy更多信息。请参阅 fluid.BuildStrategy
。
参数¶
program_or_graph (Graph|Program): 该参数为被执行的Program或Graph。
build_strategy (BuildStrategy): 通过配置build_strategy,对计算图进行转换和优化,例如:计算图中算子融合、计算图执行过程中开启内存/显存优化等。关于build_strategy更多信息,请参阅
fluid.BuildStrategy
。 默认为None。
返回¶
初始化后的 CompiledProgram
对象
返回类型¶
CompiledProgram
代码示例¶
import paddle.fluid as fluid
import numpy
place = fluid.CUDAPlace(0) # fluid.CPUPlace()
exe = fluid.Executor(place)
data = fluid.data(name='X', shape=[None, 1], dtype='float32')
hidden = fluid.layers.fc(input=data, size=10)
loss = fluid.layers.mean(hidden)
fluid.optimizer.SGD(learning_rate=0.01).minimize(loss)
exe.run(fluid.default_startup_program())
compiled_prog = fluid.CompiledProgram(
fluid.default_main_program())
x = numpy.random.random(size=(10, 1)).astype('float32')
loss_data, = exe.run(compiled_prog,
feed={"X": x},
fetch_list=[loss.name])