- 27 9月, 2017 1 次提交
-
-
由 Qiao Longfei 提交于
* init Infershape * add static InferShape interface * refactor add-op infershape * add AttrReader * add all maker's infershape * add all InferShape * add python infer api * add VarDesc interface * add python VarDesc and OpDesc interface * update python code * use infershape function to do shape inference * clean code * do not use pointer * refine code of op_proto_maker * add get_dims to VarDesc * refine the code * remove the dependency from operator to op registry * remove OpProtoAndCheckerMaker from operator * restore complete_add_op * add shape_infer_impl.h * code optimization * remove const return value * add fake BlockDesc class * optimize code * remove infer function in op_info * move InferShapeContextImpl to operator.h * optimize the interface of InferShapeContextBase * add temperary interface of new infershape * change add_op, clip_op, conv2d_op and activation_op * change all operators InferShape * fix SetDim * update cos_sim_op * update crop_op * update lookup_table_op * allocate tensor when call GetDim in InferShapeContext * update modified_huber_loss_op * update rowwise_add_op * update mean_op * update sequence_avg_pool_op * typo * remove old InferShape interface * can compile * fix or unit test * clean code * clean code * remove const before InferShapeContext * change InferenceContextBase to pointer * rename RunTime to Runtime, code clean
-
- 07 9月, 2017 1 次提交
-
-
由 fengjiayi 提交于
-
- 06 9月, 2017 2 次提交
- 16 8月, 2017 1 次提交
-
-
由 Yu Yang 提交于
-
- 14 8月, 2017 3 次提交
- 12 8月, 2017 5 次提交
- 09 8月, 2017 2 次提交
-
-
由 qingqing01 提交于
-
由 Yu Yang 提交于
-
- 08 8月, 2017 1 次提交
-
-
由 Yu Yang 提交于
* Although backward_test/rnn_test is not pass, just comment them.
-
- 01 8月, 2017 1 次提交
-
-
由 Yu Yang 提交于
* Make interface of Operator to `const Scope&`
-
- 26 7月, 2017 1 次提交
-
-
由 Yu Yang 提交于
Remove bool argument, use a class to handle that.
-
- 25 7月, 2017 1 次提交
-
-
由 Yu Yang 提交于
-
- 24 7月, 2017 1 次提交
-
-
由 Yu Yang 提交于
* ScopePtr means pointer of scope, but it can be shared or uniqued. Change it to std::shared_ptr<Scope> to make code better to read.
-
- 17 7月, 2017 1 次提交
-
-
由 Qiao Longfei 提交于
-
- 15 7月, 2017 1 次提交
-
-
由 liaogang 提交于
-
- 14 7月, 2017 2 次提交
-
-
由 Qiao Longfei 提交于
* use OperatorPtr = std::shared_ptr<OperatorBase>; * use ScopePtr = std::share_ptr<Scope>;
-
由 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)`.
-
- 13 7月, 2017 2 次提交
-
-
由 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.
-
- 12 7月, 2017 3 次提交
-
-
由 Qiao Longfei 提交于
Add unit test for OpKernel
-
由 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.
-
由 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 2 次提交
-
-
由 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
-
由 dongzhihong 提交于
-
- 07 7月, 2017 1 次提交
-
-
由 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
-