1. 11 7月, 2017 1 次提交
  2. 10 7月, 2017 1 次提交
    • Q
      init · 1a968b4f
      qijun 提交于
      1a968b4f
  3. 07 7月, 2017 1 次提交
    • F
      [draft] add registry for Op, OpProto and OpAttrChecker (#2739) · 1d2ef1db
      fengjiayi 提交于
      * init op_registry.h
      
      * dev op_registry.h
      
      * add 'attr_checker.h', which is a draft of op attribute checker.
      
      * rename some macro parameters
      
      * 1. Use `Attribute` and `AttributeMap` instead of `OpDesc`. `AttributeMap` is a unordered_map of <string, Attribute>, and `Attribute` is a boost::variant object to hold multiple types of attribute value.
      2. Use `PADDLE_ENFORCE` to print checkers' fail message.
      3. Abstract default value operations to a new function: `DefaultChecker`.
      
      * rename DefaultChecker to DefaultValueSetter
      
      ZZ
      
      * Finish op_registry
      
      1. Complete the development of interfaces between OpRegistry and
      Protobuf.
      2. Add unit test for op_registry.h
      
      * Add demo and test of custome checker
      
      * fix merge conflict
      1d2ef1db
  4. 06 7月, 2017 1 次提交
    • Y
      Generate python protobufs for paddle.v2.framework · e2ea1f42
      Yu Yang 提交于
      Python should be able to manipulate Protobuf message because:
      
      1. Python's `create_op_creation_methods` take the `OpProto` array to
         generate all `op_creation_methods` in RunTime.
      
      2. All `op_creation_methods` will create an `OpDesc` and pass it to
         Paddle C++ method `CreateOp` and return the Op handle.
      
      Here is the list of what is added in this commit:
      
      * Add `protobuf_generate_python` if it is not defined.
        * Before cmake 3.4, `protobuf_generate_python` is not defined. Just
          copy the implementation of that function in `protobuf.cmake`
      * Add `py_proto_compile` function in `cmake/generic.cmake`.
        * It follows bazel's API interface.
          * https://github.com/pubref/rules_protobuf#rules
      * Add an empty package named `paddle.v2.framework`, all python code of
        `paddle::framework` will be in that package.
      * Generate protobuf's python module `__init__.py` by `touch` while
        compiling.
      * Change setup.py.in, make `paddle.v2.framework.proto` uses the
        generated protobuf pythons.
      e2ea1f42
  5. 04 7月, 2017 4 次提交
    • Q
      add op_desc.proto (#2736) · 57171415
      Qiao Longfei 提交于
      * add op_desc.proto
      
      In Operator design, we need a proto message to describe an Operator.
      Third-party language such as python can build this proto message and use
      AddOp(const OpDesc& op_desc) of Paddle core to construct an Op in the
      Network.
      57171415
    • Y
      Add target_link_libraries for cc_library · b7397031
      Yu Yang 提交于
      It will fix #2728.
      
      Maybe it is silly to `target_link_libraries` for static library,
      because a static library do not need to link other libraries. But
      it will tell cmake how to propagate dependencies.
      
      The solution comes from
      [here](http://floooh.github.io/2016/01/12/cmake-dependency-juggling.html).
      
      * Also change op_proto_test DEPS for testing this fix works.
      b7397031
    • Y
      Add DEPS to `proto_library` · 3de3894b
      Yu Yang 提交于
      Missing DEPS will cause compile error when parallel is large.
      3de3894b
    • S
      net design with NetBuilder (#2598) · 06156daa
      Superjom (Chunwei Yan) 提交于
      * move net_design to framework
      
      * change CreateNet result to unique_ptr
      
      * rename "ScratchNet" -> "PlainNet"
      
      * add three methods to NetBase
      
      * add NetBuilder
      
      * add InferShape to NetBuilder.Run
      
      * rename ApplyGradient, ApplyOptimizer -> AddGradientOps, AddOptimiz
      
      * rename PlainNet::CreateNet -> BuildNet
      
      * add Error and other rename actions
      06156daa
  6. 03 7月, 2017 9 次提交
  7. 29 6月, 2017 3 次提交
  8. 28 6月, 2017 7 次提交
  9. 27 6月, 2017 6 次提交
  10. 24 6月, 2017 4 次提交
  11. 20 6月, 2017 3 次提交