1. 14 7月, 2017 3 次提交
    • F
      Refactor Tensor::CopyFrom() · dcfcf687
      fengjiayi 提交于
      1. Add template T which indicates data type to `CopyFrom()`, `Slice()`
      and `ShareData()` functions. This makes `CopyData()` code much clearer.
      
      2. Add `set_dim()`.
      
      3. `product(DDim)` transforms `DDim` to `vector<int>` first and then calculate
      its product. That might be quite slow. For `product(dims_)` is frequently
      used in Tensor, we add a mumber variable `numel_` as a cache of the
      product result.
      TODO: refactor `product()` to make it more efficient.
      
      4. Unable Tensor::operator=
      
      5. Remove the limit of POD type, because `float16` and `int8` are not POD type.
      dcfcf687
    • F
      Refactor `Tensor::CopyFrom()` · a1dc4311
      fengjiayi 提交于
      a1dc4311
    • Q
      change op to operators · e5887301
      qiaolongfei 提交于
      e5887301
  2. 13 7月, 2017 5 次提交
  3. 12 7月, 2017 18 次提交
  4. 11 7月, 2017 10 次提交
    • F
      add more test · 0665dc97
      fengjiayi 提交于
      0665dc97
    • F
      Add several interfaces for Tensor class · ca39515e
      fengjiayi 提交于
      1. Add member variable 'DDim dims_' and a getter function 'dims()'.
      'dims' is supposed to hold tensor's shape during Op::InferShape.
      2. Remove 'mutable_data' which use default Place. User must specify a
      explicit Place when call 'mutable_data'.
      3. A PlaceHolder may be shared by more than one tensor, and some of them may be the others' slices. So we add a new member variable 'offset_' for Tensor, which is used to show the byte offset between PlaceHolder::ptr_ and where tensor's data really begins.
      4. Add functions 'ShareDataFrom' and 'Slice' for Tensor.
      
      TODO: Tensor needs a 'CopyFrom' function.
      ca39515e
    • Q
      fix cublas dynload bug · 69d76812
      qijun 提交于
      69d76812
    • Y
      Move static variable defined in .cc (#2782) · 267f9a2c
      Yu Yang 提交于
      * Move static variable defined in .cc
      
      We cannot define static variable in .h, because it will be multi-defined
      errors.
      
      Also fix some cpp syntax, like:
      
      * Prefer to use algorithm not manually for-loop, to make code more
        readable.
      * Remove unused `()`.
      * Enforce take a bool. It is no need `xxx==true`.
      * Use range-based for-loop iterator from op_desc.attrs
      
      * Fix a protential static variable init order error
      267f9a2c
    • Y
      Expose paddle.framework by pybind11 (#2793) · 27b196ba
      Yu Yang 提交于
      * Expose paddle.framework by pybind11
      
      * Export paddle.framework.{Scope, Variable} to paddle.v2.framework.core.
      * See python/paddle/v2/framework/tests/test_scope.py for Python usage
      * See paddle/pybind/pybind.cc for C++ bind code.
      
      * add copyright
      27b196ba
    • Y
      Refine CUDA Related libraries · a0466053
      Yu Yang 提交于
      a0466053
    • Y
      Simplelize framework/CMakeLists.txt (#2803) · abff52ab
      Yu Yang 提交于
      * generic.cmake can propogate dependencies through libraries. It is no
        need to specific all dependencies.
      abff52ab
    • D
      "switch to shared_ptr" · b871641a
      dongzhihong 提交于
      b871641a
    • D
      "support net_proto header" · 18e65b0c
      dongzhihong 提交于
      18e65b0c
    • D
      "move opContext to DeviceContext" · bc021d77
      dongzhihong 提交于
      bc021d77
  5. 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
  6. 07 7月, 2017 3 次提交
    • W
      fix new remote updater for go pserver · 26d95a6b
      wuyi05 提交于
      26d95a6b
    • 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