- 17 7月, 2017 6 次提交
- 15 7月, 2017 1 次提交
-
-
由 Yu Yang 提交于
All OpCreation method are generated by `create_op_creation_methods::__bootstrap__` method, and stores in `op_creations` object and its methods. There are three parts to implement this feature. 1. Get all registered `OpProto` from C++ side. It is implemented in `get_all_op_protos` method. 1. Create a function to convert `kwargs` to `OpDesc` base on each op's `OpProto`. The `OpDescCreationMethod` class. 1. Convert `OpProto` to `docstring` by `get_docstring_from_op_proto` method. All three methods are unit tested. The `__bootstrap__` just combines them together and create a method in runtime. For details, please reference the doc string in `create_op_creation_methods.py` and the unit test `test_op_creation_methods.py`.
-
- 14 7月, 2017 5 次提交
-
-
由 Yu Yang 提交于
-
由 caoying03 提交于
-
由 caoying03 提交于
-
由 Yu Yang 提交于
* PyBind and SWIG of paddle cannot be load in a single Python process, lazy import all SWIG library of Paddle. Otherwise, the glog, gflags are imported twice in a same Python process. * Note that all PyBind11 return C++ std::string as an unicode. For protobuf, it is need be cast to `str` before use them. * Add unit test for Get `OpProtos`
-
由 Yu Yang 提交于
-
- 11 7月, 2017 3 次提交
-
-
由 Yu Yang 提交于
`Paddle` manages Scope as programming language's scope. It just a thread-local stack of Scope. Top of that stack is current scope, the bottom of that stack is all scopes' parent. Invoking `create_var/get_var` can `create/get` variable in current scope. Invoking `enter_local_scope/leave_local_scope` can create or destroy local scope. A `scoped_function` will take a `function` as input. That function will be invoked in a new local scope.
-
由 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 提交于
* Fix #2797 * It because trainer_config_helpers' __dfs_travel__ did not record the node which travelled, and if the topology has a recursive dependency, there are some nodes will be travelled multiple times. * Add a `travelled` set to record which node is travelled. * Also add a unittest for this situation.
-
- 10 7月, 2017 1 次提交
-
-
由 caoying03 提交于
-
- 07 7月, 2017 4 次提交
-
-
由 wuyi05 提交于
-
由 xuwei06 提交于
-
由 xuwei06 提交于
-
由 gongweibao 提交于
-
- 06 7月, 2017 5 次提交
-
-
由 gongweibao 提交于
-
由 gongweibao 提交于
-
由 caoying03 提交于
-
由 caoying03 提交于
-
由 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.
-
- 05 7月, 2017 1 次提交
-
-
由 Luo Tao 提交于
-
- 04 7月, 2017 2 次提交
-
-
由 yangyaming 提交于
-
由 gongweibao 提交于
-
- 03 7月, 2017 3 次提交
-
-
由 Luo Tao 提交于
-
由 liaogang 提交于
-
由 gongweibao 提交于
-
- 30 6月, 2017 6 次提交
-
-
由 dongzhihong 提交于
-
由 dangqingqing 提交于
-
由 dangqingqing 提交于
-
由 dangqingqing 提交于
-
由 gongweibao 提交于
-
由 Helin Wang 提交于
-
- 29 6月, 2017 3 次提交
-
-
由 yangyaming 提交于
-
由 liaogang 提交于
-
由 gongweibao 提交于
-