Skip to content

Commit 16f64b4

Browse files
committed
test=develop, Merge branch 'develop' of https://github.com/PaddlePaddle/Paddle into feature/imperative
2 parents bb88119 + 245b1f0 commit 16f64b4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+1010
-533
lines changed

CMakeLists.txt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ endif()
212212
if (WITH_JEMALLOC)
213213
find_package(JeMalloc REQUIRED)
214214
include_directories(${JEMALLOC_INCLUDE_DIR})
215-
add_definitions(-DWITH_JEMALLOC)
215+
add_definitions(-DPADDLE_WITH_JEMALLOC)
216216
endif()
217217

218218
include(generic) # simplify cmake module
@@ -276,9 +276,3 @@ add_subdirectory(paddle)
276276
if(WITH_PYTHON)
277277
add_subdirectory(python)
278278
endif()
279-
280-
if(WITH_DOC)
281-
find_package(Sphinx REQUIRED)
282-
find_python_module(recommonmark REQUIRED)
283-
add_subdirectory(doc)
284-
endif()

Dockerfile

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,10 @@ RUN /bin/bash -c 'if [[ -n ${UBUNTU_MIRROR} ]]; then sed -i 's#http://archive.ub
1111
# ENV variables
1212
ARG WITH_GPU
1313
ARG WITH_AVX
14-
ARG WITH_DOC
1514

1615
ENV WOBOQ OFF
1716
ENV WITH_GPU=${WITH_GPU:-ON}
1817
ENV WITH_AVX=${WITH_AVX:-ON}
19-
ENV WITH_DOC=${WITH_DOC:-OFF}
2018

2119
ENV HOME /root
2220
# Add bash enhancements

cmake/FindSphinx.cmake

Lines changed: 0 additions & 147 deletions
This file was deleted.

paddle/fluid/API.spec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -325,6 +325,7 @@ paddle.fluid.layers.iou_similarity ArgSpec(args=['x', 'y', 'name'], varargs=None
325325
paddle.fluid.layers.box_coder ArgSpec(args=['prior_box', 'prior_box_var', 'target_box', 'code_type', 'box_normalized', 'name'], varargs=None, keywords=None, defaults=('encode_center_size', True, None))
326326
paddle.fluid.layers.polygon_box_transform ArgSpec(args=['input', 'name'], varargs=None, keywords=None, defaults=(None,))
327327
paddle.fluid.layers.yolov3_loss ArgSpec(args=['x', 'gtbox', 'gtlabel', 'anchors', 'class_num', 'ignore_thresh', 'loss_weight_xy', 'loss_weight_wh', 'loss_weight_conf_target', 'loss_weight_conf_notarget', 'loss_weight_class', 'name'], varargs=None, keywords=None, defaults=(None, None, None, None, None, None))
328+
paddle.fluid.layers.multiclass_nms ArgSpec(args=['bboxes', 'scores', 'score_threshold', 'nms_top_k', 'keep_top_k', 'nms_threshold', 'normalized', 'nms_eta', 'background_label', 'name'], varargs=None, keywords=None, defaults=(0.3, True, 1.0, 0, None))
328329
paddle.fluid.layers.accuracy ArgSpec(args=['input', 'label', 'k', 'correct', 'total'], varargs=None, keywords=None, defaults=(1, None, None))
329330
paddle.fluid.layers.auc ArgSpec(args=['input', 'label', 'curve', 'num_thresholds', 'topk', 'slide_steps'], varargs=None, keywords=None, defaults=('ROC', 4095, 1, 1))
330331
paddle.fluid.layers.exponential_decay ArgSpec(args=['learning_rate', 'decay_steps', 'decay_rate', 'staircase'], varargs=None, keywords=None, defaults=(False,))

paddle/fluid/framework/CMakeLists.txt

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
#windows treat symbolic file as a real file, which is different with unix
32
#We create a hidden file and compile it instead of origin source file.
43
function(windows_symbolic TARGET)
@@ -207,3 +206,24 @@ endif (NOT WIN32)
207206

208207
cc_library(dlpack_tensor SRCS dlpack_tensor.cc DEPS tensor dlpack)
209208
cc_test(dlpack_tensor_test SRCS dlpack_tensor_test.cc DEPS dlpack_tensor glog)
209+
210+
# Get the current working branch
211+
execute_process(
212+
COMMAND git rev-parse --abbrev-ref HEAD
213+
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
214+
OUTPUT_VARIABLE PADDLE_BRANCH
215+
OUTPUT_STRIP_TRAILING_WHITESPACE
216+
)
217+
218+
# Get the latest abbreviated commit hash of the working branch
219+
execute_process(
220+
COMMAND git log -1 --format=%h
221+
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
222+
OUTPUT_VARIABLE PADDLE_COMMIT
223+
OUTPUT_STRIP_TRAILING_WHITESPACE
224+
)
225+
226+
message(STATUS "commit: ${PADDLE_COMMIT}")
227+
message(STATUS "branch: ${PADDLE_BRANCH}")
228+
229+
configure_file(commit.h.in commit.h)

paddle/fluid/framework/commit.h.in

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#pragma once
2+
3+
#include <string>
4+
5+
namespace paddle {
6+
namespace framework {
7+
8+
static std::string paddle_commit() {
9+
return "@PADDLE_COMMIT@";
10+
}
11+
12+
static std::string paddle_compile_branch() {
13+
return "@PADDLE_BRANCH@";
14+
}
15+
16+
static std::string paddle_version() {
17+
return "@PADDLE_VERSION@";
18+
}
19+
20+
} // namespace framework
21+
} // namespace paddle

paddle/fluid/imperative/layer.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,8 @@ class Autograd {
156156
for (auto it : candidate->pre_ops_) {
157157
for (OpBase* pre_op : it.second) {
158158
if (!pre_op) continue;
159+
VLOG(5) << "op dep " << candidate->op_desc_->Type() << " <---- "
160+
<< it.first << " <---- " << pre_op->op_desc_->Type();
159161
if (visited.find(pre_op) == visited.end()) {
160162
visited.insert(pre_op);
161163
queue.push_back(pre_op);

paddle/fluid/imperative/layer.h

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include "paddle/fluid/framework/var_desc.h"
2929
#include "paddle/fluid/platform/enforce.h"
3030
#include "paddle/fluid/platform/device_context.h"
31+
#include "paddle/fluid/operators/math/math_function.h"
3132

3233
#include "paddle/fluid/imperative/type_defs.h"
3334

@@ -140,16 +141,24 @@ class VarBase {
140141
void RunBackward();
141142

142143
void TrackPreOp(OpBase* pre_op, const std::string& pre_op_out_name,
143-
int pre_op_out_idx, bool stop_gradient) {
144+
int pre_op_out_idx, bool pre_op_stop_gradient) {
144145
pre_op_ = pre_op;
145146
pre_op_out_name_ = pre_op_out_name;
146147
pre_op_out_idx_ = pre_op_out_idx;
147-
stop_gradient_ = stop_gradient;
148+
if (pre_op_stop_gradient) {
149+
stop_gradient_ = pre_op_stop_gradient;
150+
}
148151
}
149152

150153
void ClearGradient() {
151-
delete grads_;
152-
grads_ = new VarBase(true);
154+
VLOG(1) << "clear gradient of " << var_desc_->Name();
155+
if (grads_ && grads_->var_ && grads_->var_->IsInitialized()) {
156+
auto grads_t = grads_->var_->GetMutable<framework::LoDTensor>();
157+
operators::math::set_constant(
158+
*(platform::DeviceContextPool::Instance().Get(
159+
grads_->var_->Get<framework::LoDTensor>().place())),
160+
grads_t, 0.0);
161+
}
153162
}
154163

155164
framework::LoDTensor& GradValue();

paddle/fluid/imperative/tracer.cc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,12 @@ void Tracer::Trace(OpBase* op, const VarBasePtrMap& inputs,
8585
op->input_vars_ = inputs;
8686
for (auto it : op->input_vars_) {
8787
auto& invars = invars_map[it.first];
88+
invars.reserve(it.second.size());
8889
for (VarBase* inp : it.second) {
8990
PADDLE_ENFORCE_NOT_NULL(inp->var_, "op %s input %s nullptr",
9091
op->op_desc_->Type(), inp->var_desc_->Name());
9192

92-
invars.push_back(inp->var_);
93+
invars.emplace_back(inp->var_);
9394
vars[inp->var_desc_->Name()] = inp;
9495
if (inp->PreOp()) {
9596
op->pre_ops_[it.first].push_back(inp->PreOp());
@@ -106,9 +107,10 @@ void Tracer::Trace(OpBase* op, const VarBasePtrMap& inputs,
106107
for (auto it : op->output_vars_) {
107108
auto& outvars = outvars_map[it.first];
108109
const std::vector<VarBase*>& outputs = it.second;
110+
outvars.reserve(outputs.size());
109111
for (size_t i = 0; i < outputs.size(); ++i) {
110112
VarBase* out = outputs[i];
111-
outvars.push_back(out->var_);
113+
outvars.emplace_back(out->var_);
112114
vars[out->var_desc_->Name()] = out;
113115

114116
framework::VarDesc* var_desc = block->FindVar(out->var_desc_->Name());

paddle/fluid/inference/analysis/argument.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ struct Argument {
132132
DECL_ARGUMENT_FIELD(tensorrt_workspace_size, TensorRtWorkspaceSize, int);
133133
DECL_ARGUMENT_FIELD(tensorrt_min_subgraph_size, TensorRtMinSubgraphSize, int);
134134
DECL_ARGUMENT_FIELD(tensorrt_precision_mode, TensorRtPrecisionMode,
135-
contrib::AnalysisConfig::Precision);
135+
AnalysisConfig::Precision);
136136

137137
// Memory optimized related.
138138
DECL_ARGUMENT_FIELD(enable_memory_optim, EnableMemoryOptim, bool);

0 commit comments

Comments
 (0)