Skip to content

Fluid shape inference 全过程

Qiao Longfei edited this page Feb 24, 2018 · 1 revision

使用layer_helper.create_parameter创建parameter的时候,会在startup_program和main_program中创建两个var,这样做的主要目的是为了做infershape,compile time infershape的时候,只能看到当前block的Var,而看不到更高层次的block中的var。

def create_parameter(...):
  ...

  self.startup_program.global_block().create_parameter(
    dtype=dtype, shape=shape, **attr.to_kwargs(with_initializer=True))
  return self.main_program.global_block().create_parameter(
    dtype=dtype, shape=shape, **attr.to_kwargs())
Clone this wiki locally