# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: tensorflow/core/grappler/costs/op_performance_data.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from tensorflow.core.framework import tensor_shape_pb2 as tensorflow_dot_core_dot_framework_dot_tensor__shape__pb2
from tensorflow.core.framework import types_pb2 as tensorflow_dot_core_dot_framework_dot_types__pb2
from tensorflow.core.framework import attr_value_pb2 as tensorflow_dot_core_dot_framework_dot_attr__value__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='tensorflow/core/grappler/costs/op_performance_data.proto',
  package='tensorflow',
  syntax='proto3',
  serialized_pb=_b('\n8tensorflow/core/grappler/costs/op_performance_data.proto\x12\ntensorflow\x1a,tensorflow/core/framework/tensor_shape.proto\x1a%tensorflow/core/framework/types.proto\x1a*tensorflow/core/framework/attr_value.proto\"\xee\x05\n\x06OpInfo\x12\n\n\x02op\x18\x01 \x01(\t\x12*\n\x04\x61ttr\x18\x02 \x03(\x0b\x32\x1c.tensorflow.OpInfo.AttrEntry\x12\x33\n\x06inputs\x18\x03 \x03(\x0b\x32#.tensorflow.OpInfo.TensorProperties\x12\x33\n\x06\x64\x65vice\x18\x04 \x01(\x0b\x32#.tensorflow.OpInfo.DeviceProperties\x1a\x42\n\tAttrEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.tensorflow.AttrValue:\x02\x38\x01\x1a\x64\n\x10TensorProperties\x12#\n\x05\x64type\x18\x01 \x01(\x0e\x32\x14.tensorflow.DataType\x12+\n\x05shape\x18\x02 \x01(\x0b\x32\x1c.tensorflow.TensorShapeProto\x1a\x97\x03\n\x10\x44\x65viceProperties\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0e\n\x06vendor\x18\x02 \x01(\t\x12\r\n\x05model\x18\x03 \x01(\t\x12\x11\n\tfrequency\x18\x04 \x01(\x03\x12\x11\n\tnum_cores\x18\x05 \x01(\x03\x12I\n\x0b\x65nvironment\x18\x06 \x03(\x0b\x32\x34.tensorflow.OpInfo.DeviceProperties.EnvironmentEntry\x12\x15\n\rnum_registers\x18\x07 \x01(\x03\x12\x15\n\rl1_cache_size\x18\x08 \x01(\x03\x12\x15\n\rl2_cache_size\x18\t \x01(\x03\x12\x15\n\rl3_cache_size\x18\n \x01(\x03\x12-\n%shared_memory_size_per_multiprocessor\x18\x0b \x01(\x03\x12\x13\n\x0bmemory_size\x18\x0c \x01(\x03\x12\x11\n\tbandwidth\x18\r \x01(\x03\x1a\x32\n\x10\x45nvironmentEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa7\x03\n\rOpPerformance\x12\x1e\n\x02op\x18\x01 \x01(\x0b\x32\x12.tensorflow.OpInfo\x12\x0c\n\x04node\x18\x05 \x01(\t\x12\x1d\n\x15temporary_memory_size\x18\x02 \x01(\x03\x12\x14\n\x0c\x63ompute_cost\x18\x03 \x01(\x03\x12\x14\n\x0c\x63ompute_time\x18\x06 \x01(\x03\x12\x13\n\x0bmemory_time\x18\x07 \x01(\x03\x12\x1a\n\x12\x63ompute_efficiency\x18\x04 \x01(\x01\x12\x19\n\x11memory_efficiency\x18\x08 \x01(\x01\x12\x35\n\top_memory\x18\t \x01(\x0b\x32\".tensorflow.OpPerformance.OpMemory\x1a\x99\x01\n\x08OpMemory\x12\x15\n\routput_memory\x18\x01 \x03(\x03\x12\x18\n\x10host_temp_memory\x18\x02 \x01(\x03\x12\x1a\n\x12\x64\x65vice_temp_memory\x18\x03 \x01(\x03\x12\x1e\n\x16host_persistent_memory\x18\x04 \x01(\x03\x12 \n\x18\x64\x65vice_persistent_memory\x18\x05 \x01(\x03\x42\x03\xf8\x01\x01\x62\x06proto3')
  ,
  dependencies=[tensorflow_dot_core_dot_framework_dot_tensor__shape__pb2.DESCRIPTOR,tensorflow_dot_core_dot_framework_dot_types__pb2.DESCRIPTOR,tensorflow_dot_core_dot_framework_dot_attr__value__pb2.DESCRIPTOR,])
_sym_db.RegisterFileDescriptor(DESCRIPTOR)




_OPINFO_ATTRENTRY = _descriptor.Descriptor(
  name='AttrEntry',
  full_name='tensorflow.OpInfo.AttrEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='tensorflow.OpInfo.AttrEntry.key', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='tensorflow.OpInfo.AttrEntry.value', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=374,
  serialized_end=440,
)

_OPINFO_TENSORPROPERTIES = _descriptor.Descriptor(
  name='TensorProperties',
  full_name='tensorflow.OpInfo.TensorProperties',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='dtype', full_name='tensorflow.OpInfo.TensorProperties.dtype', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='shape', full_name='tensorflow.OpInfo.TensorProperties.shape', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=442,
  serialized_end=542,
)

_OPINFO_DEVICEPROPERTIES_ENVIRONMENTENTRY = _descriptor.Descriptor(
  name='EnvironmentEntry',
  full_name='tensorflow.OpInfo.DeviceProperties.EnvironmentEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='tensorflow.OpInfo.DeviceProperties.EnvironmentEntry.key', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='tensorflow.OpInfo.DeviceProperties.EnvironmentEntry.value', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=902,
  serialized_end=952,
)

_OPINFO_DEVICEPROPERTIES = _descriptor.Descriptor(
  name='DeviceProperties',
  full_name='tensorflow.OpInfo.DeviceProperties',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='tensorflow.OpInfo.DeviceProperties.type', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='vendor', full_name='tensorflow.OpInfo.DeviceProperties.vendor', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='model', full_name='tensorflow.OpInfo.DeviceProperties.model', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='frequency', full_name='tensorflow.OpInfo.DeviceProperties.frequency', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='num_cores', full_name='tensorflow.OpInfo.DeviceProperties.num_cores', index=4,
      number=5, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='environment', full_name='tensorflow.OpInfo.DeviceProperties.environment', index=5,
      number=6, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='num_registers', full_name='tensorflow.OpInfo.DeviceProperties.num_registers', index=6,
      number=7, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='l1_cache_size', full_name='tensorflow.OpInfo.DeviceProperties.l1_cache_size', index=7,
      number=8, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='l2_cache_size', full_name='tensorflow.OpInfo.DeviceProperties.l2_cache_size', index=8,
      number=9, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='l3_cache_size', full_name='tensorflow.OpInfo.DeviceProperties.l3_cache_size', index=9,
      number=10, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='shared_memory_size_per_multiprocessor', full_name='tensorflow.OpInfo.DeviceProperties.shared_memory_size_per_multiprocessor', index=10,
      number=11, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='memory_size', full_name='tensorflow.OpInfo.DeviceProperties.memory_size', index=11,
      number=12, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bandwidth', full_name='tensorflow.OpInfo.DeviceProperties.bandwidth', index=12,
      number=13, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_OPINFO_DEVICEPROPERTIES_ENVIRONMENTENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=545,
  serialized_end=952,
)

_OPINFO = _descriptor.Descriptor(
  name='OpInfo',
  full_name='tensorflow.OpInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='op', full_name='tensorflow.OpInfo.op', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='attr', full_name='tensorflow.OpInfo.attr', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='inputs', full_name='tensorflow.OpInfo.inputs', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device', full_name='tensorflow.OpInfo.device', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_OPINFO_ATTRENTRY, _OPINFO_TENSORPROPERTIES, _OPINFO_DEVICEPROPERTIES, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=202,
  serialized_end=952,
)


_OPPERFORMANCE_OPMEMORY = _descriptor.Descriptor(
  name='OpMemory',
  full_name='tensorflow.OpPerformance.OpMemory',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='output_memory', full_name='tensorflow.OpPerformance.OpMemory.output_memory', index=0,
      number=1, type=3, cpp_type=2, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='host_temp_memory', full_name='tensorflow.OpPerformance.OpMemory.host_temp_memory', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_temp_memory', full_name='tensorflow.OpPerformance.OpMemory.device_temp_memory', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='host_persistent_memory', full_name='tensorflow.OpPerformance.OpMemory.host_persistent_memory', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_persistent_memory', full_name='tensorflow.OpPerformance.OpMemory.device_persistent_memory', index=4,
      number=5, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1225,
  serialized_end=1378,
)

_OPPERFORMANCE = _descriptor.Descriptor(
  name='OpPerformance',
  full_name='tensorflow.OpPerformance',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='op', full_name='tensorflow.OpPerformance.op', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='node', full_name='tensorflow.OpPerformance.node', index=1,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='temporary_memory_size', full_name='tensorflow.OpPerformance.temporary_memory_size', index=2,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='compute_cost', full_name='tensorflow.OpPerformance.compute_cost', index=3,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='compute_time', full_name='tensorflow.OpPerformance.compute_time', index=4,
      number=6, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='memory_time', full_name='tensorflow.OpPerformance.memory_time', index=5,
      number=7, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='compute_efficiency', full_name='tensorflow.OpPerformance.compute_efficiency', index=6,
      number=4, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='memory_efficiency', full_name='tensorflow.OpPerformance.memory_efficiency', index=7,
      number=8, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='op_memory', full_name='tensorflow.OpPerformance.op_memory', index=8,
      number=9, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_OPPERFORMANCE_OPMEMORY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=955,
  serialized_end=1378,
)

_OPINFO_ATTRENTRY.fields_by_name['value'].message_type = tensorflow_dot_core_dot_framework_dot_attr__value__pb2._ATTRVALUE
_OPINFO_ATTRENTRY.containing_type = _OPINFO
_OPINFO_TENSORPROPERTIES.fields_by_name['dtype'].enum_type = tensorflow_dot_core_dot_framework_dot_types__pb2._DATATYPE
_OPINFO_TENSORPROPERTIES.fields_by_name['shape'].message_type = tensorflow_dot_core_dot_framework_dot_tensor__shape__pb2._TENSORSHAPEPROTO
_OPINFO_TENSORPROPERTIES.containing_type = _OPINFO
_OPINFO_DEVICEPROPERTIES_ENVIRONMENTENTRY.containing_type = _OPINFO_DEVICEPROPERTIES
_OPINFO_DEVICEPROPERTIES.fields_by_name['environment'].message_type = _OPINFO_DEVICEPROPERTIES_ENVIRONMENTENTRY
_OPINFO_DEVICEPROPERTIES.containing_type = _OPINFO
_OPINFO.fields_by_name['attr'].message_type = _OPINFO_ATTRENTRY
_OPINFO.fields_by_name['inputs'].message_type = _OPINFO_TENSORPROPERTIES
_OPINFO.fields_by_name['device'].message_type = _OPINFO_DEVICEPROPERTIES
_OPPERFORMANCE_OPMEMORY.containing_type = _OPPERFORMANCE
_OPPERFORMANCE.fields_by_name['op'].message_type = _OPINFO
_OPPERFORMANCE.fields_by_name['op_memory'].message_type = _OPPERFORMANCE_OPMEMORY
DESCRIPTOR.message_types_by_name['OpInfo'] = _OPINFO
DESCRIPTOR.message_types_by_name['OpPerformance'] = _OPPERFORMANCE

OpInfo = _reflection.GeneratedProtocolMessageType('OpInfo', (_message.Message,), dict(

  AttrEntry = _reflection.GeneratedProtocolMessageType('AttrEntry', (_message.Message,), dict(
    DESCRIPTOR = _OPINFO_ATTRENTRY,
    __module__ = 'tensorflow.core.grappler.costs.op_performance_data_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.OpInfo.AttrEntry)
    ))
  ,

  TensorProperties = _reflection.GeneratedProtocolMessageType('TensorProperties', (_message.Message,), dict(
    DESCRIPTOR = _OPINFO_TENSORPROPERTIES,
    __module__ = 'tensorflow.core.grappler.costs.op_performance_data_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.OpInfo.TensorProperties)
    ))
  ,

  DeviceProperties = _reflection.GeneratedProtocolMessageType('DeviceProperties', (_message.Message,), dict(

    EnvironmentEntry = _reflection.GeneratedProtocolMessageType('EnvironmentEntry', (_message.Message,), dict(
      DESCRIPTOR = _OPINFO_DEVICEPROPERTIES_ENVIRONMENTENTRY,
      __module__ = 'tensorflow.core.grappler.costs.op_performance_data_pb2'
      # @@protoc_insertion_point(class_scope:tensorflow.OpInfo.DeviceProperties.EnvironmentEntry)
      ))
    ,
    DESCRIPTOR = _OPINFO_DEVICEPROPERTIES,
    __module__ = 'tensorflow.core.grappler.costs.op_performance_data_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.OpInfo.DeviceProperties)
    ))
  ,
  DESCRIPTOR = _OPINFO,
  __module__ = 'tensorflow.core.grappler.costs.op_performance_data_pb2'
  # @@protoc_insertion_point(class_scope:tensorflow.OpInfo)
  ))
_sym_db.RegisterMessage(OpInfo)
_sym_db.RegisterMessage(OpInfo.AttrEntry)
_sym_db.RegisterMessage(OpInfo.TensorProperties)
_sym_db.RegisterMessage(OpInfo.DeviceProperties)
_sym_db.RegisterMessage(OpInfo.DeviceProperties.EnvironmentEntry)

OpPerformance = _reflection.GeneratedProtocolMessageType('OpPerformance', (_message.Message,), dict(

  OpMemory = _reflection.GeneratedProtocolMessageType('OpMemory', (_message.Message,), dict(
    DESCRIPTOR = _OPPERFORMANCE_OPMEMORY,
    __module__ = 'tensorflow.core.grappler.costs.op_performance_data_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.OpPerformance.OpMemory)
    ))
  ,
  DESCRIPTOR = _OPPERFORMANCE,
  __module__ = 'tensorflow.core.grappler.costs.op_performance_data_pb2'
  # @@protoc_insertion_point(class_scope:tensorflow.OpPerformance)
  ))
_sym_db.RegisterMessage(OpPerformance)
_sym_db.RegisterMessage(OpPerformance.OpMemory)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\370\001\001'))
_OPINFO_ATTRENTRY.has_options = True
_OPINFO_ATTRENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
_OPINFO_DEVICEPROPERTIES_ENVIRONMENTENTRY.has_options = True
_OPINFO_DEVICEPROPERTIES_ENVIRONMENTENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
# @@protoc_insertion_point(module_scope)
