- 14 7月, 2017 3 次提交
-
-
由 Yu Yang 提交于
* Let OpProto support multiple and temporary * Each input/output of Paddle's Op could be a list. Add multiple mark to OpProto. Also add a `input_format`/`output_format` attribute if that Op has multiple input or output. The format of that attribute please reference the comments in `op_proto.proto` * Add temporary mark, because some output of an Op is not used by user but used by other op for faster computation. Explicitly mark which output is temporary could let future memory/computation optimization. * Add generated field to AttrProto. * Add `AddInputs`/`AddOutputs` function * It is more readable to invoke `AddInputs` not `AddInput(multiple=true)`.
-
由 qiaolongfei 提交于
-
由 Helin Wang 提交于
The buffer allocation size should be number of bytes, not number of floats.
-
- 13 7月, 2017 7 次提交
-
-
由 Liu Yiqun 提交于
-
由 Yu Yang 提交于
* Convert `op` --> `operators` * Remove AddType in OpProtoMaker, because type is part of registry. * Rename CPU_OR_GPU --> DEVICE_TYPE in registry macro.
-
由 Yu Yang 提交于
* Refine register methods, make Op can get rid of whole-archieve * `USE_OP` before a op is used. * Add unittest for add_op.
-
由 Liu Yiqun 提交于
-
由 Qiao Longfei 提交于
-
由 qijun 提交于
-
由 Helin Wang 提交于
-
- 12 7月, 2017 17 次提交
-
-
由 Qiao Longfei 提交于
Add unit test for OpKernel
-
由 qijun 提交于
-
由 qijun 提交于
-
由 qijun 提交于
-
由 qijun 提交于
-
由 qijun 提交于
-
由 Luo Tao 提交于
-
由 qijun 提交于
-
由 Yu Yang 提交于
* User can register OpKernel to its Ops. The OpKernelMap saved in OperatorWithKernel. Each Op which inherits OperatorWithKernel will use `OpKernel::Compute` instead of Run.
-
由 qijun 提交于
-
由 qijun 提交于
-
由 qijun 提交于
-
由 qijun 提交于
-
由 fengjiayi 提交于
Paddle's data block is row-major order, while Dim::contiguous and Dim::contiguous_strides are based on column-order. So remove them to prevent misuse.
-
由 fengjiayi 提交于
-
由 qijun 提交于
-
由 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.
-
- 11 7月, 2017 10 次提交
-
-
由 fengjiayi 提交于
-
由 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.
-
由 qijun 提交于
-
由 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
-
由 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
-
由 Yu Yang 提交于
-
由 Yu Yang 提交于
* generic.cmake can propogate dependencies through libraries. It is no need to specific all dependencies.
-
由 dongzhihong 提交于
-
由 dongzhihong 提交于
-
由 dongzhihong 提交于
-
- 10 7月, 2017 1 次提交
-
-
由 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
-
- 07 7月, 2017 2 次提交
-
-
由 wuyi05 提交于
-
由 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
-