1. 12 7月, 2017 1 次提交
    • Q
      add operator base (#2725) · a2e5f652
      Qiao Longfei 提交于
      Add OperatorBase.
      
      issue: https://github.com/PaddlePaddle/Paddle/issues/2790
      
      Paddle design the Operator with Kernel. OperatorBase has no type and device information when create, One operator can have multiple kernels, Operator will choose a kernel to run according to context. The kernel should be bind to Operator before or during Operator running.
      a2e5f652
  2. 11 7月, 2017 6 次提交
  3. 10 7月, 2017 1 次提交
    • Q
      implement DeviceContext (#2709) · 1038bc46
      QI JUN 提交于
      * add device_context
      
      * add unittest for device_context
      
      * transfer to use function paddle::platform::throw_on_error
      
      * fix cuda build error
      
      * using dynload functions
      
      * follow comments
      1038bc46
  4. 07 7月, 2017 2 次提交
    • 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
    • G
      rm -v · 4daa247d
      gongweibao 提交于
      4daa247d
  5. 06 7月, 2017 4 次提交
    • G
      add -V · b3960554
      gongweibao 提交于
      b3960554
    • 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
    • Y
      Fix CI error on test_LayerGrad.LSTM · 1b366dc2
      Yu Yang 提交于
      * We should not EXPECT_EQ between a float value and a int value.
        Use ASSERT_NEAR instead.
      1b366dc2
    • S
      fix ci · 1264480b
      Superjom 提交于
      1264480b
  6. 05 7月, 2017 11 次提交
  7. 04 7月, 2017 15 次提交