From 3a7b9ed7c2b4121b69ad2559ed8315c3bb10c09b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E6=99=93=E4=BC=9F?= <39303645+Shixiaowei02@users.noreply.github.com> Date: Tue, 25 May 2021 20:02:52 +0800 Subject: [PATCH] add the op def proto, test=develop (#33098) * add the op def proto, test=develop * add while.pbtxt --- paddle/fluid/framework/CMakeLists.txt | 1 + paddle/fluid/framework/op_def.proto | 43 ++++++++++++++++++++ paddle/fluid/operators/compat/while.pbtxt | 49 +++++++++++++++++++++++ 3 files changed, 93 insertions(+) create mode 100644 paddle/fluid/framework/op_def.proto create mode 100644 paddle/fluid/operators/compat/while.pbtxt diff --git a/paddle/fluid/framework/CMakeLists.txt b/paddle/fluid/framework/CMakeLists.txt index db2f9c9fc5..8d1ae4926a 100644 --- a/paddle/fluid/framework/CMakeLists.txt +++ b/paddle/fluid/framework/CMakeLists.txt @@ -27,6 +27,7 @@ add_subdirectory(fleet) add_subdirectory(io) #ddim lib proto_library(framework_proto SRCS framework.proto) +proto_library(op_def_proto SRCS op_def.proto) proto_library(heter_service_proto SRCS heter_service.proto) proto_library(data_feed_proto SRCS data_feed.proto) proto_library(trainer_desc_proto SRCS trainer_desc.proto DEPS framework_proto diff --git a/paddle/fluid/framework/op_def.proto b/paddle/fluid/framework/op_def.proto new file mode 100644 index 0000000000..7c4b42b134 --- /dev/null +++ b/paddle/fluid/framework/op_def.proto @@ -0,0 +1,43 @@ +/* Copyright (c) 2021 PaddlePaddle Authors. All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. */ + +syntax = "proto2"; + +import "framework.proto"; +package paddle.framework.proto; + +message OpDef { + + message VarDef { + required string name = 1; + + // For the type of input / output variables. + reserved 2; + } + + message AttrDef { + required string name = 1; + required AttrType type = 2; + } + + message Desc { + repeated VarDef inputs = 1; + repeated VarDef outputs = 2; + repeated AttrDef attrs = 3; + } + + required string type = 1; + required Desc def = 2; + optional Desc extra = 3; +} diff --git a/paddle/fluid/operators/compat/while.pbtxt b/paddle/fluid/operators/compat/while.pbtxt new file mode 100644 index 0000000000..34435e1d9e --- /dev/null +++ b/paddle/fluid/operators/compat/while.pbtxt @@ -0,0 +1,49 @@ +type: "while" +def { + inputs { + name: "X" + } + inputs { + name: "Condition" + } + outputs { + name: "Out" + } + outputs { + name: "StepScopes" + } + attrs { + name: "sub_block" + type: BLOCK + } +} +extra { + attrs { + name: "is_test" + type: BOOLEAN + } + attrs { + name: "skip_eager_deletion_vars" + type: STRINGS + } + attrs { + name: "op_role" + type: INT + } + attrs { + name: "op_role_var" + type: STRINGS + } + attrs { + name: "op_namescope" + type: STRING + } + attrs { + name: "op_callstack" + type: STRINGS + } + attrs { + name: "op_device" + type: STRING + } +} -- GitLab