diff options
author | 2018-09-28 17:04:06 -0700 | |
---|---|---|
committer | 2018-09-28 17:07:26 -0700 | |
commit | 3c01aa2b00ee4c3fda412b23da39fd0894c04cf7 (patch) | |
tree | 90785846d488ffd2ccf316bb1f09ef1854990713 /tensorflow/core/framework | |
parent | 43e4905a8e554291656bcf65eb7d17d6019df9f8 (diff) |
Bunch of micro move optimizations
PiperOrigin-RevId: 215018984
Diffstat (limited to 'tensorflow/core/framework')
-rw-r--r-- | tensorflow/core/framework/node_def_util.h | 1 | ||||
-rw-r--r-- | tensorflow/core/framework/op.h | 20 | ||||
-rw-r--r-- | tensorflow/core/framework/op_def_builder.cc | 24 | ||||
-rw-r--r-- | tensorflow/core/framework/op_def_builder.h | 14 |
4 files changed, 29 insertions, 30 deletions
diff --git a/tensorflow/core/framework/node_def_util.h b/tensorflow/core/framework/node_def_util.h index 187bfa2c88..0ff67554eb 100644 --- a/tensorflow/core/framework/node_def_util.h +++ b/tensorflow/core/framework/node_def_util.h @@ -17,7 +17,6 @@ limitations under the License. #define TENSORFLOW_CORE_FRAMEWORK_NODE_DEF_UTIL_H_ #include <string> -#include <unordered_map> #include <vector> #include "tensorflow/core/framework/attr_value_util.h" diff --git a/tensorflow/core/framework/op.h b/tensorflow/core/framework/op.h index 25f8de8dcc..81ed5f95f0 100644 --- a/tensorflow/core/framework/op.h +++ b/tensorflow/core/framework/op.h @@ -209,16 +209,16 @@ template <> class OpDefBuilderWrapper<true> { public: OpDefBuilderWrapper(const char name[]) : builder_(name) {} - OpDefBuilderWrapper<true>& Attr(StringPiece spec) { - builder_.Attr(spec); + OpDefBuilderWrapper<true>& Attr(string spec) { + builder_.Attr(std::move(spec)); return *this; } - OpDefBuilderWrapper<true>& Input(StringPiece spec) { - builder_.Input(spec); + OpDefBuilderWrapper<true>& Input(string spec) { + builder_.Input(std::move(spec)); return *this; } - OpDefBuilderWrapper<true>& Output(StringPiece spec) { - builder_.Output(spec); + OpDefBuilderWrapper<true>& Output(string spec) { + builder_.Output(std::move(spec)); return *this; } OpDefBuilderWrapper<true>& SetIsCommutative() { @@ -237,12 +237,12 @@ class OpDefBuilderWrapper<true> { builder_.SetAllowsUninitializedInput(); return *this; } - OpDefBuilderWrapper<true>& Deprecated(int version, StringPiece explanation) { - builder_.Deprecated(version, explanation); + OpDefBuilderWrapper<true>& Deprecated(int version, string explanation) { + builder_.Deprecated(version, std::move(explanation)); return *this; } - OpDefBuilderWrapper<true>& Doc(StringPiece text) { - builder_.Doc(text); + OpDefBuilderWrapper<true>& Doc(string text) { + builder_.Doc(std::move(text)); return *this; } OpDefBuilderWrapper<true>& SetShapeFn( diff --git a/tensorflow/core/framework/op_def_builder.cc b/tensorflow/core/framework/op_def_builder.cc index 34a7a43d38..8a9bb63182 100644 --- a/tensorflow/core/framework/op_def_builder.cc +++ b/tensorflow/core/framework/op_def_builder.cc @@ -526,32 +526,32 @@ void FinalizeDoc(const string& text, OpDef* op_def, } // namespace -OpDefBuilder::OpDefBuilder(StringPiece op_name) { - op_def()->set_name(string(op_name)); // NOLINT +OpDefBuilder::OpDefBuilder(string op_name) { + op_def()->set_name(std::move(op_name)); } -OpDefBuilder& OpDefBuilder::Attr(StringPiece spec) { - attrs_.emplace_back(spec.data(), spec.size()); +OpDefBuilder& OpDefBuilder::Attr(string spec) { + attrs_.push_back(std::move(spec)); return *this; } -OpDefBuilder& OpDefBuilder::Input(StringPiece spec) { - inputs_.emplace_back(spec.data(), spec.size()); +OpDefBuilder& OpDefBuilder::Input(string spec) { + inputs_.push_back(std::move(spec)); return *this; } -OpDefBuilder& OpDefBuilder::Output(StringPiece spec) { - outputs_.emplace_back(spec.data(), spec.size()); +OpDefBuilder& OpDefBuilder::Output(string spec) { + outputs_.push_back(std::move(spec)); return *this; } #ifndef TF_LEAN_BINARY -OpDefBuilder& OpDefBuilder::Doc(StringPiece text) { +OpDefBuilder& OpDefBuilder::Doc(string text) { if (!doc_.empty()) { errors_.push_back( strings::StrCat("Extra call to Doc() for Op ", op_def()->name())); } else { - doc_.assign(text.data(), text.size()); + doc_ = std::move(text); } return *this; } @@ -577,14 +577,14 @@ OpDefBuilder& OpDefBuilder::SetAllowsUninitializedInput() { return *this; } -OpDefBuilder& OpDefBuilder::Deprecated(int version, StringPiece explanation) { +OpDefBuilder& OpDefBuilder::Deprecated(int version, string explanation) { if (op_def()->has_deprecation()) { errors_.push_back( strings::StrCat("Deprecated called twice for Op ", op_def()->name())); } else { OpDeprecation* deprecation = op_def()->mutable_deprecation(); deprecation->set_version(version); - deprecation->set_explanation(string(explanation)); + deprecation->set_explanation(std::move(explanation)); } return *this; } diff --git a/tensorflow/core/framework/op_def_builder.h b/tensorflow/core/framework/op_def_builder.h index 0b39d6e848..8077b20598 100644 --- a/tensorflow/core/framework/op_def_builder.h +++ b/tensorflow/core/framework/op_def_builder.h @@ -51,7 +51,7 @@ struct OpRegistrationData { class OpDefBuilder { public: // Constructs an OpDef with just the name field set. - explicit OpDefBuilder(StringPiece op_name); + explicit OpDefBuilder(string op_name); // Adds an attr to this OpDefBuilder (and returns *this). The spec has // format "<name>:<type>" or "<name>:<type>=<default>" @@ -84,7 +84,7 @@ class OpDefBuilder { // * Ability to restrict the type of the tensor like the existing // restrictions for type attrs. // Perhaps by linking the type of the tensor to a type attr? - OpDefBuilder& Attr(StringPiece spec); + OpDefBuilder& Attr(string spec); // Adds an input or output to this OpDefBuilder (and returns *this). // The spec has form "<name>:<type-expr>" or "<name>:Ref(<type-expr>)" @@ -101,8 +101,8 @@ class OpDefBuilder { // in the spec? // TODO(josh11b): SparseInput() and SparseOutput() matching the Python // handling? - OpDefBuilder& Input(StringPiece spec); - OpDefBuilder& Output(StringPiece spec); + OpDefBuilder& Input(string spec); + OpDefBuilder& Output(string spec); // Turns on the indicated boolean flag in this OpDefBuilder (and // returns *this). @@ -112,7 +112,7 @@ class OpDefBuilder { OpDefBuilder& SetAllowsUninitializedInput(); // Deprecate the op at a certain GraphDef version. - OpDefBuilder& Deprecated(int version, StringPiece explanation); + OpDefBuilder& Deprecated(int version, string explanation); // Adds docs to this OpDefBuilder (and returns *this). // Docs have the format: @@ -128,9 +128,9 @@ class OpDefBuilder { // to suppress the automatically-generated type documentation in // generated output. #ifndef TF_LEAN_BINARY - OpDefBuilder& Doc(StringPiece text); + OpDefBuilder& Doc(string text); #else - OpDefBuilder& Doc(StringPiece text) { return *this; } + OpDefBuilder& Doc(string text) { return *this; } #endif // Sets the shape function to be used for shape inference. |