1. 11 7月, 2017 2 次提交
  2. 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
  3. 06 7月, 2017 2 次提交
    • 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
    • S
      fix ci · 1264480b
      Superjom 提交于
      1264480b
  4. 04 7月, 2017 6 次提交
  5. 03 7月, 2017 4 次提交
    • Y
      Fix link error in op_proto_test. · 3f63d96a
      Yu Yang 提交于
      3f63d96a
    • Y
      Add OpProto unittest. · 9bf98168
      Yu Yang 提交于
      9bf98168
    • Y
      Add OpProto implementation · bdd27208
      Yu Yang 提交于
      OpProto is a proto message that helps 3rd-party language bindings, e.g.
      `Python`, to generate operator creation methods. The operator creation
      method is the low-level API for 3rd-party language bindings. Op creation
      methods take the user's input in that language, and convert users inputs
      into `OpDesc` message, then passing that `OpDesc` message to Paddle's
      C++ core and create an operator.
      
      * A separated `attr_type.proto` is added, because that file wound
        be included by `op_desc.proto` in future.
      bdd27208
    • F
      init tensor_test.cc · 696ba1d2
      fengjiayi 提交于
      696ba1d2
  6. 29 6月, 2017 1 次提交
  7. 28 6月, 2017 1 次提交
  8. 27 6月, 2017 1 次提交
  9. 24 6月, 2017 1 次提交
  10. 20 6月, 2017 1 次提交