1#![allow(unknown_lints)]
6#![allow(clippy::all)]
7
8#![cfg_attr(rustfmt, rustfmt_skip)]
9
10#![allow(box_pointers)]
11#![allow(dead_code)]
12#![allow(missing_docs)]
13#![allow(non_camel_case_types)]
14#![allow(non_snake_case)]
15#![allow(non_upper_case_globals)]
16#![allow(trivial_casts)]
17#![allow(unsafe_code)]
18#![allow(unused_imports)]
19#![allow(unused_results)]
20use protobuf::Message as Message_imported_for_functions;
23use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
24
25#[derive(PartialEq,Clone,Default)]
30pub struct CostGraphDef {
31 pub node: ::protobuf::RepeatedField<CostGraphDef_Node>,
33 pub cost: ::protobuf::RepeatedField<CostGraphDef_AggregatedCost>,
34 pub unknown_fields: ::protobuf::UnknownFields,
36 pub cached_size: ::protobuf::CachedSize,
37}
38
39impl<'a> ::std::default::Default for &'a CostGraphDef {
40 fn default() -> &'a CostGraphDef {
41 <CostGraphDef as ::protobuf::Message>::default_instance()
42 }
43}
44
45impl CostGraphDef {
46 pub fn new() -> CostGraphDef {
47 ::std::default::Default::default()
48 }
49
50 pub fn get_node(&self) -> &[CostGraphDef_Node] {
54 &self.node
55 }
56 pub fn clear_node(&mut self) {
57 self.node.clear();
58 }
59
60 pub fn set_node(&mut self, v: ::protobuf::RepeatedField<CostGraphDef_Node>) {
62 self.node = v;
63 }
64
65 pub fn mut_node(&mut self) -> &mut ::protobuf::RepeatedField<CostGraphDef_Node> {
67 &mut self.node
68 }
69
70 pub fn take_node(&mut self) -> ::protobuf::RepeatedField<CostGraphDef_Node> {
72 ::std::mem::replace(&mut self.node, ::protobuf::RepeatedField::new())
73 }
74
75 pub fn get_cost(&self) -> &[CostGraphDef_AggregatedCost] {
79 &self.cost
80 }
81 pub fn clear_cost(&mut self) {
82 self.cost.clear();
83 }
84
85 pub fn set_cost(&mut self, v: ::protobuf::RepeatedField<CostGraphDef_AggregatedCost>) {
87 self.cost = v;
88 }
89
90 pub fn mut_cost(&mut self) -> &mut ::protobuf::RepeatedField<CostGraphDef_AggregatedCost> {
92 &mut self.cost
93 }
94
95 pub fn take_cost(&mut self) -> ::protobuf::RepeatedField<CostGraphDef_AggregatedCost> {
97 ::std::mem::replace(&mut self.cost, ::protobuf::RepeatedField::new())
98 }
99}
100
101impl ::protobuf::Message for CostGraphDef {
102 fn is_initialized(&self) -> bool {
103 for v in &self.node {
104 if !v.is_initialized() {
105 return false;
106 }
107 };
108 for v in &self.cost {
109 if !v.is_initialized() {
110 return false;
111 }
112 };
113 true
114 }
115
116 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
117 while !is.eof()? {
118 let (field_number, wire_type) = is.read_tag_unpack()?;
119 match field_number {
120 1 => {
121 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.node)?;
122 },
123 2 => {
124 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.cost)?;
125 },
126 _ => {
127 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
128 },
129 };
130 }
131 ::std::result::Result::Ok(())
132 }
133
134 #[allow(unused_variables)]
136 fn compute_size(&self) -> u32 {
137 let mut my_size = 0;
138 for value in &self.node {
139 let len = value.compute_size();
140 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
141 };
142 for value in &self.cost {
143 let len = value.compute_size();
144 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
145 };
146 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
147 self.cached_size.set(my_size);
148 my_size
149 }
150
151 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
152 for v in &self.node {
153 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
154 os.write_raw_varint32(v.get_cached_size())?;
155 v.write_to_with_cached_sizes(os)?;
156 };
157 for v in &self.cost {
158 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
159 os.write_raw_varint32(v.get_cached_size())?;
160 v.write_to_with_cached_sizes(os)?;
161 };
162 os.write_unknown_fields(self.get_unknown_fields())?;
163 ::std::result::Result::Ok(())
164 }
165
166 fn get_cached_size(&self) -> u32 {
167 self.cached_size.get()
168 }
169
170 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
171 &self.unknown_fields
172 }
173
174 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
175 &mut self.unknown_fields
176 }
177
178 fn as_any(&self) -> &dyn (::std::any::Any) {
179 self as &dyn (::std::any::Any)
180 }
181 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
182 self as &mut dyn (::std::any::Any)
183 }
184 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
185 self
186 }
187
188 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
189 Self::descriptor_static()
190 }
191
192 fn new() -> CostGraphDef {
193 CostGraphDef::new()
194 }
195
196 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
197 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
198 unsafe {
199 descriptor.get(|| {
200 let mut fields = ::std::vec::Vec::new();
201 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CostGraphDef_Node>>(
202 "node",
203 |m: &CostGraphDef| { &m.node },
204 |m: &mut CostGraphDef| { &mut m.node },
205 ));
206 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CostGraphDef_AggregatedCost>>(
207 "cost",
208 |m: &CostGraphDef| { &m.cost },
209 |m: &mut CostGraphDef| { &mut m.cost },
210 ));
211 ::protobuf::reflect::MessageDescriptor::new_pb_name::<CostGraphDef>(
212 "CostGraphDef",
213 fields,
214 file_descriptor_proto()
215 )
216 })
217 }
218 }
219
220 fn default_instance() -> &'static CostGraphDef {
221 static mut instance: ::protobuf::lazy::Lazy<CostGraphDef> = ::protobuf::lazy::Lazy::INIT;
222 unsafe {
223 instance.get(CostGraphDef::new)
224 }
225 }
226}
227
228impl ::protobuf::Clear for CostGraphDef {
229 fn clear(&mut self) {
230 self.node.clear();
231 self.cost.clear();
232 self.unknown_fields.clear();
233 }
234}
235
236impl ::std::fmt::Debug for CostGraphDef {
237 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
238 ::protobuf::text_format::fmt(self, f)
239 }
240}
241
242impl ::protobuf::reflect::ProtobufValue for CostGraphDef {
243 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
244 ::protobuf::reflect::ReflectValueRef::Message(self)
245 }
246}
247
248#[derive(PartialEq,Clone,Default)]
249pub struct CostGraphDef_Node {
250 pub name: ::std::string::String,
252 pub device: ::std::string::String,
253 pub id: i32,
254 pub input_info: ::protobuf::RepeatedField<CostGraphDef_Node_InputInfo>,
255 pub output_info: ::protobuf::RepeatedField<CostGraphDef_Node_OutputInfo>,
256 pub temporary_memory_size: i64,
257 pub persistent_memory_size: i64,
258 pub host_temp_memory_size: i64,
259 pub device_temp_memory_size: i64,
260 pub device_persistent_memory_size: i64,
261 pub compute_cost: i64,
262 pub compute_time: i64,
263 pub memory_time: i64,
264 pub is_final: bool,
265 pub control_input: ::std::vec::Vec<i32>,
266 pub inaccurate: bool,
267 pub unknown_fields: ::protobuf::UnknownFields,
269 pub cached_size: ::protobuf::CachedSize,
270}
271
272impl<'a> ::std::default::Default for &'a CostGraphDef_Node {
273 fn default() -> &'a CostGraphDef_Node {
274 <CostGraphDef_Node as ::protobuf::Message>::default_instance()
275 }
276}
277
278impl CostGraphDef_Node {
279 pub fn new() -> CostGraphDef_Node {
280 ::std::default::Default::default()
281 }
282
283 pub fn get_name(&self) -> &str {
287 &self.name
288 }
289 pub fn clear_name(&mut self) {
290 self.name.clear();
291 }
292
293 pub fn set_name(&mut self, v: ::std::string::String) {
295 self.name = v;
296 }
297
298 pub fn mut_name(&mut self) -> &mut ::std::string::String {
301 &mut self.name
302 }
303
304 pub fn take_name(&mut self) -> ::std::string::String {
306 ::std::mem::replace(&mut self.name, ::std::string::String::new())
307 }
308
309 pub fn get_device(&self) -> &str {
313 &self.device
314 }
315 pub fn clear_device(&mut self) {
316 self.device.clear();
317 }
318
319 pub fn set_device(&mut self, v: ::std::string::String) {
321 self.device = v;
322 }
323
324 pub fn mut_device(&mut self) -> &mut ::std::string::String {
327 &mut self.device
328 }
329
330 pub fn take_device(&mut self) -> ::std::string::String {
332 ::std::mem::replace(&mut self.device, ::std::string::String::new())
333 }
334
335 pub fn get_id(&self) -> i32 {
339 self.id
340 }
341 pub fn clear_id(&mut self) {
342 self.id = 0;
343 }
344
345 pub fn set_id(&mut self, v: i32) {
347 self.id = v;
348 }
349
350 pub fn get_input_info(&self) -> &[CostGraphDef_Node_InputInfo] {
354 &self.input_info
355 }
356 pub fn clear_input_info(&mut self) {
357 self.input_info.clear();
358 }
359
360 pub fn set_input_info(&mut self, v: ::protobuf::RepeatedField<CostGraphDef_Node_InputInfo>) {
362 self.input_info = v;
363 }
364
365 pub fn mut_input_info(&mut self) -> &mut ::protobuf::RepeatedField<CostGraphDef_Node_InputInfo> {
367 &mut self.input_info
368 }
369
370 pub fn take_input_info(&mut self) -> ::protobuf::RepeatedField<CostGraphDef_Node_InputInfo> {
372 ::std::mem::replace(&mut self.input_info, ::protobuf::RepeatedField::new())
373 }
374
375 pub fn get_output_info(&self) -> &[CostGraphDef_Node_OutputInfo] {
379 &self.output_info
380 }
381 pub fn clear_output_info(&mut self) {
382 self.output_info.clear();
383 }
384
385 pub fn set_output_info(&mut self, v: ::protobuf::RepeatedField<CostGraphDef_Node_OutputInfo>) {
387 self.output_info = v;
388 }
389
390 pub fn mut_output_info(&mut self) -> &mut ::protobuf::RepeatedField<CostGraphDef_Node_OutputInfo> {
392 &mut self.output_info
393 }
394
395 pub fn take_output_info(&mut self) -> ::protobuf::RepeatedField<CostGraphDef_Node_OutputInfo> {
397 ::std::mem::replace(&mut self.output_info, ::protobuf::RepeatedField::new())
398 }
399
400 pub fn get_temporary_memory_size(&self) -> i64 {
404 self.temporary_memory_size
405 }
406 pub fn clear_temporary_memory_size(&mut self) {
407 self.temporary_memory_size = 0;
408 }
409
410 pub fn set_temporary_memory_size(&mut self, v: i64) {
412 self.temporary_memory_size = v;
413 }
414
415 pub fn get_persistent_memory_size(&self) -> i64 {
419 self.persistent_memory_size
420 }
421 pub fn clear_persistent_memory_size(&mut self) {
422 self.persistent_memory_size = 0;
423 }
424
425 pub fn set_persistent_memory_size(&mut self, v: i64) {
427 self.persistent_memory_size = v;
428 }
429
430 pub fn get_host_temp_memory_size(&self) -> i64 {
434 self.host_temp_memory_size
435 }
436 pub fn clear_host_temp_memory_size(&mut self) {
437 self.host_temp_memory_size = 0;
438 }
439
440 pub fn set_host_temp_memory_size(&mut self, v: i64) {
442 self.host_temp_memory_size = v;
443 }
444
445 pub fn get_device_temp_memory_size(&self) -> i64 {
449 self.device_temp_memory_size
450 }
451 pub fn clear_device_temp_memory_size(&mut self) {
452 self.device_temp_memory_size = 0;
453 }
454
455 pub fn set_device_temp_memory_size(&mut self, v: i64) {
457 self.device_temp_memory_size = v;
458 }
459
460 pub fn get_device_persistent_memory_size(&self) -> i64 {
464 self.device_persistent_memory_size
465 }
466 pub fn clear_device_persistent_memory_size(&mut self) {
467 self.device_persistent_memory_size = 0;
468 }
469
470 pub fn set_device_persistent_memory_size(&mut self, v: i64) {
472 self.device_persistent_memory_size = v;
473 }
474
475 pub fn get_compute_cost(&self) -> i64 {
479 self.compute_cost
480 }
481 pub fn clear_compute_cost(&mut self) {
482 self.compute_cost = 0;
483 }
484
485 pub fn set_compute_cost(&mut self, v: i64) {
487 self.compute_cost = v;
488 }
489
490 pub fn get_compute_time(&self) -> i64 {
494 self.compute_time
495 }
496 pub fn clear_compute_time(&mut self) {
497 self.compute_time = 0;
498 }
499
500 pub fn set_compute_time(&mut self, v: i64) {
502 self.compute_time = v;
503 }
504
505 pub fn get_memory_time(&self) -> i64 {
509 self.memory_time
510 }
511 pub fn clear_memory_time(&mut self) {
512 self.memory_time = 0;
513 }
514
515 pub fn set_memory_time(&mut self, v: i64) {
517 self.memory_time = v;
518 }
519
520 pub fn get_is_final(&self) -> bool {
524 self.is_final
525 }
526 pub fn clear_is_final(&mut self) {
527 self.is_final = false;
528 }
529
530 pub fn set_is_final(&mut self, v: bool) {
532 self.is_final = v;
533 }
534
535 pub fn get_control_input(&self) -> &[i32] {
539 &self.control_input
540 }
541 pub fn clear_control_input(&mut self) {
542 self.control_input.clear();
543 }
544
545 pub fn set_control_input(&mut self, v: ::std::vec::Vec<i32>) {
547 self.control_input = v;
548 }
549
550 pub fn mut_control_input(&mut self) -> &mut ::std::vec::Vec<i32> {
552 &mut self.control_input
553 }
554
555 pub fn take_control_input(&mut self) -> ::std::vec::Vec<i32> {
557 ::std::mem::replace(&mut self.control_input, ::std::vec::Vec::new())
558 }
559
560 pub fn get_inaccurate(&self) -> bool {
564 self.inaccurate
565 }
566 pub fn clear_inaccurate(&mut self) {
567 self.inaccurate = false;
568 }
569
570 pub fn set_inaccurate(&mut self, v: bool) {
572 self.inaccurate = v;
573 }
574}
575
576impl ::protobuf::Message for CostGraphDef_Node {
577 fn is_initialized(&self) -> bool {
578 for v in &self.input_info {
579 if !v.is_initialized() {
580 return false;
581 }
582 };
583 for v in &self.output_info {
584 if !v.is_initialized() {
585 return false;
586 }
587 };
588 true
589 }
590
591 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
592 while !is.eof()? {
593 let (field_number, wire_type) = is.read_tag_unpack()?;
594 match field_number {
595 1 => {
596 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
597 },
598 2 => {
599 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.device)?;
600 },
601 3 => {
602 if wire_type != ::protobuf::wire_format::WireTypeVarint {
603 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
604 }
605 let tmp = is.read_int32()?;
606 self.id = tmp;
607 },
608 4 => {
609 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.input_info)?;
610 },
611 5 => {
612 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.output_info)?;
613 },
614 6 => {
615 if wire_type != ::protobuf::wire_format::WireTypeVarint {
616 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
617 }
618 let tmp = is.read_int64()?;
619 self.temporary_memory_size = tmp;
620 },
621 12 => {
622 if wire_type != ::protobuf::wire_format::WireTypeVarint {
623 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
624 }
625 let tmp = is.read_int64()?;
626 self.persistent_memory_size = tmp;
627 },
628 10 => {
629 if wire_type != ::protobuf::wire_format::WireTypeVarint {
630 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
631 }
632 let tmp = is.read_int64()?;
633 self.host_temp_memory_size = tmp;
634 },
635 11 => {
636 if wire_type != ::protobuf::wire_format::WireTypeVarint {
637 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
638 }
639 let tmp = is.read_int64()?;
640 self.device_temp_memory_size = tmp;
641 },
642 16 => {
643 if wire_type != ::protobuf::wire_format::WireTypeVarint {
644 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
645 }
646 let tmp = is.read_int64()?;
647 self.device_persistent_memory_size = tmp;
648 },
649 9 => {
650 if wire_type != ::protobuf::wire_format::WireTypeVarint {
651 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
652 }
653 let tmp = is.read_int64()?;
654 self.compute_cost = tmp;
655 },
656 14 => {
657 if wire_type != ::protobuf::wire_format::WireTypeVarint {
658 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
659 }
660 let tmp = is.read_int64()?;
661 self.compute_time = tmp;
662 },
663 15 => {
664 if wire_type != ::protobuf::wire_format::WireTypeVarint {
665 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
666 }
667 let tmp = is.read_int64()?;
668 self.memory_time = tmp;
669 },
670 7 => {
671 if wire_type != ::protobuf::wire_format::WireTypeVarint {
672 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
673 }
674 let tmp = is.read_bool()?;
675 self.is_final = tmp;
676 },
677 8 => {
678 ::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.control_input)?;
679 },
680 17 => {
681 if wire_type != ::protobuf::wire_format::WireTypeVarint {
682 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
683 }
684 let tmp = is.read_bool()?;
685 self.inaccurate = tmp;
686 },
687 _ => {
688 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
689 },
690 };
691 }
692 ::std::result::Result::Ok(())
693 }
694
695 #[allow(unused_variables)]
697 fn compute_size(&self) -> u32 {
698 let mut my_size = 0;
699 if !self.name.is_empty() {
700 my_size += ::protobuf::rt::string_size(1, &self.name);
701 }
702 if !self.device.is_empty() {
703 my_size += ::protobuf::rt::string_size(2, &self.device);
704 }
705 if self.id != 0 {
706 my_size += ::protobuf::rt::value_size(3, self.id, ::protobuf::wire_format::WireTypeVarint);
707 }
708 for value in &self.input_info {
709 let len = value.compute_size();
710 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
711 };
712 for value in &self.output_info {
713 let len = value.compute_size();
714 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
715 };
716 if self.temporary_memory_size != 0 {
717 my_size += ::protobuf::rt::value_size(6, self.temporary_memory_size, ::protobuf::wire_format::WireTypeVarint);
718 }
719 if self.persistent_memory_size != 0 {
720 my_size += ::protobuf::rt::value_size(12, self.persistent_memory_size, ::protobuf::wire_format::WireTypeVarint);
721 }
722 if self.host_temp_memory_size != 0 {
723 my_size += ::protobuf::rt::value_size(10, self.host_temp_memory_size, ::protobuf::wire_format::WireTypeVarint);
724 }
725 if self.device_temp_memory_size != 0 {
726 my_size += ::protobuf::rt::value_size(11, self.device_temp_memory_size, ::protobuf::wire_format::WireTypeVarint);
727 }
728 if self.device_persistent_memory_size != 0 {
729 my_size += ::protobuf::rt::value_size(16, self.device_persistent_memory_size, ::protobuf::wire_format::WireTypeVarint);
730 }
731 if self.compute_cost != 0 {
732 my_size += ::protobuf::rt::value_size(9, self.compute_cost, ::protobuf::wire_format::WireTypeVarint);
733 }
734 if self.compute_time != 0 {
735 my_size += ::protobuf::rt::value_size(14, self.compute_time, ::protobuf::wire_format::WireTypeVarint);
736 }
737 if self.memory_time != 0 {
738 my_size += ::protobuf::rt::value_size(15, self.memory_time, ::protobuf::wire_format::WireTypeVarint);
739 }
740 if self.is_final != false {
741 my_size += 2;
742 }
743 for value in &self.control_input {
744 my_size += ::protobuf::rt::value_size(8, *value, ::protobuf::wire_format::WireTypeVarint);
745 };
746 if self.inaccurate != false {
747 my_size += 3;
748 }
749 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
750 self.cached_size.set(my_size);
751 my_size
752 }
753
754 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
755 if !self.name.is_empty() {
756 os.write_string(1, &self.name)?;
757 }
758 if !self.device.is_empty() {
759 os.write_string(2, &self.device)?;
760 }
761 if self.id != 0 {
762 os.write_int32(3, self.id)?;
763 }
764 for v in &self.input_info {
765 os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
766 os.write_raw_varint32(v.get_cached_size())?;
767 v.write_to_with_cached_sizes(os)?;
768 };
769 for v in &self.output_info {
770 os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
771 os.write_raw_varint32(v.get_cached_size())?;
772 v.write_to_with_cached_sizes(os)?;
773 };
774 if self.temporary_memory_size != 0 {
775 os.write_int64(6, self.temporary_memory_size)?;
776 }
777 if self.persistent_memory_size != 0 {
778 os.write_int64(12, self.persistent_memory_size)?;
779 }
780 if self.host_temp_memory_size != 0 {
781 os.write_int64(10, self.host_temp_memory_size)?;
782 }
783 if self.device_temp_memory_size != 0 {
784 os.write_int64(11, self.device_temp_memory_size)?;
785 }
786 if self.device_persistent_memory_size != 0 {
787 os.write_int64(16, self.device_persistent_memory_size)?;
788 }
789 if self.compute_cost != 0 {
790 os.write_int64(9, self.compute_cost)?;
791 }
792 if self.compute_time != 0 {
793 os.write_int64(14, self.compute_time)?;
794 }
795 if self.memory_time != 0 {
796 os.write_int64(15, self.memory_time)?;
797 }
798 if self.is_final != false {
799 os.write_bool(7, self.is_final)?;
800 }
801 for v in &self.control_input {
802 os.write_int32(8, *v)?;
803 };
804 if self.inaccurate != false {
805 os.write_bool(17, self.inaccurate)?;
806 }
807 os.write_unknown_fields(self.get_unknown_fields())?;
808 ::std::result::Result::Ok(())
809 }
810
811 fn get_cached_size(&self) -> u32 {
812 self.cached_size.get()
813 }
814
815 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
816 &self.unknown_fields
817 }
818
819 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
820 &mut self.unknown_fields
821 }
822
823 fn as_any(&self) -> &dyn (::std::any::Any) {
824 self as &dyn (::std::any::Any)
825 }
826 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
827 self as &mut dyn (::std::any::Any)
828 }
829 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
830 self
831 }
832
833 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
834 Self::descriptor_static()
835 }
836
837 fn new() -> CostGraphDef_Node {
838 CostGraphDef_Node::new()
839 }
840
841 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
842 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
843 unsafe {
844 descriptor.get(|| {
845 let mut fields = ::std::vec::Vec::new();
846 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
847 "name",
848 |m: &CostGraphDef_Node| { &m.name },
849 |m: &mut CostGraphDef_Node| { &mut m.name },
850 ));
851 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
852 "device",
853 |m: &CostGraphDef_Node| { &m.device },
854 |m: &mut CostGraphDef_Node| { &mut m.device },
855 ));
856 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
857 "id",
858 |m: &CostGraphDef_Node| { &m.id },
859 |m: &mut CostGraphDef_Node| { &mut m.id },
860 ));
861 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CostGraphDef_Node_InputInfo>>(
862 "input_info",
863 |m: &CostGraphDef_Node| { &m.input_info },
864 |m: &mut CostGraphDef_Node| { &mut m.input_info },
865 ));
866 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CostGraphDef_Node_OutputInfo>>(
867 "output_info",
868 |m: &CostGraphDef_Node| { &m.output_info },
869 |m: &mut CostGraphDef_Node| { &mut m.output_info },
870 ));
871 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
872 "temporary_memory_size",
873 |m: &CostGraphDef_Node| { &m.temporary_memory_size },
874 |m: &mut CostGraphDef_Node| { &mut m.temporary_memory_size },
875 ));
876 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
877 "persistent_memory_size",
878 |m: &CostGraphDef_Node| { &m.persistent_memory_size },
879 |m: &mut CostGraphDef_Node| { &mut m.persistent_memory_size },
880 ));
881 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
882 "host_temp_memory_size",
883 |m: &CostGraphDef_Node| { &m.host_temp_memory_size },
884 |m: &mut CostGraphDef_Node| { &mut m.host_temp_memory_size },
885 ));
886 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
887 "device_temp_memory_size",
888 |m: &CostGraphDef_Node| { &m.device_temp_memory_size },
889 |m: &mut CostGraphDef_Node| { &mut m.device_temp_memory_size },
890 ));
891 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
892 "device_persistent_memory_size",
893 |m: &CostGraphDef_Node| { &m.device_persistent_memory_size },
894 |m: &mut CostGraphDef_Node| { &mut m.device_persistent_memory_size },
895 ));
896 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
897 "compute_cost",
898 |m: &CostGraphDef_Node| { &m.compute_cost },
899 |m: &mut CostGraphDef_Node| { &mut m.compute_cost },
900 ));
901 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
902 "compute_time",
903 |m: &CostGraphDef_Node| { &m.compute_time },
904 |m: &mut CostGraphDef_Node| { &mut m.compute_time },
905 ));
906 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
907 "memory_time",
908 |m: &CostGraphDef_Node| { &m.memory_time },
909 |m: &mut CostGraphDef_Node| { &mut m.memory_time },
910 ));
911 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
912 "is_final",
913 |m: &CostGraphDef_Node| { &m.is_final },
914 |m: &mut CostGraphDef_Node| { &mut m.is_final },
915 ));
916 fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
917 "control_input",
918 |m: &CostGraphDef_Node| { &m.control_input },
919 |m: &mut CostGraphDef_Node| { &mut m.control_input },
920 ));
921 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
922 "inaccurate",
923 |m: &CostGraphDef_Node| { &m.inaccurate },
924 |m: &mut CostGraphDef_Node| { &mut m.inaccurate },
925 ));
926 ::protobuf::reflect::MessageDescriptor::new_pb_name::<CostGraphDef_Node>(
927 "CostGraphDef.Node",
928 fields,
929 file_descriptor_proto()
930 )
931 })
932 }
933 }
934
935 fn default_instance() -> &'static CostGraphDef_Node {
936 static mut instance: ::protobuf::lazy::Lazy<CostGraphDef_Node> = ::protobuf::lazy::Lazy::INIT;
937 unsafe {
938 instance.get(CostGraphDef_Node::new)
939 }
940 }
941}
942
943impl ::protobuf::Clear for CostGraphDef_Node {
944 fn clear(&mut self) {
945 self.name.clear();
946 self.device.clear();
947 self.id = 0;
948 self.input_info.clear();
949 self.output_info.clear();
950 self.temporary_memory_size = 0;
951 self.persistent_memory_size = 0;
952 self.host_temp_memory_size = 0;
953 self.device_temp_memory_size = 0;
954 self.device_persistent_memory_size = 0;
955 self.compute_cost = 0;
956 self.compute_time = 0;
957 self.memory_time = 0;
958 self.is_final = false;
959 self.control_input.clear();
960 self.inaccurate = false;
961 self.unknown_fields.clear();
962 }
963}
964
965impl ::std::fmt::Debug for CostGraphDef_Node {
966 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
967 ::protobuf::text_format::fmt(self, f)
968 }
969}
970
971impl ::protobuf::reflect::ProtobufValue for CostGraphDef_Node {
972 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
973 ::protobuf::reflect::ReflectValueRef::Message(self)
974 }
975}
976
977#[derive(PartialEq,Clone,Default)]
978pub struct CostGraphDef_Node_InputInfo {
979 pub preceding_node: i32,
981 pub preceding_port: i32,
982 pub unknown_fields: ::protobuf::UnknownFields,
984 pub cached_size: ::protobuf::CachedSize,
985}
986
987impl<'a> ::std::default::Default for &'a CostGraphDef_Node_InputInfo {
988 fn default() -> &'a CostGraphDef_Node_InputInfo {
989 <CostGraphDef_Node_InputInfo as ::protobuf::Message>::default_instance()
990 }
991}
992
993impl CostGraphDef_Node_InputInfo {
994 pub fn new() -> CostGraphDef_Node_InputInfo {
995 ::std::default::Default::default()
996 }
997
998 pub fn get_preceding_node(&self) -> i32 {
1002 self.preceding_node
1003 }
1004 pub fn clear_preceding_node(&mut self) {
1005 self.preceding_node = 0;
1006 }
1007
1008 pub fn set_preceding_node(&mut self, v: i32) {
1010 self.preceding_node = v;
1011 }
1012
1013 pub fn get_preceding_port(&self) -> i32 {
1017 self.preceding_port
1018 }
1019 pub fn clear_preceding_port(&mut self) {
1020 self.preceding_port = 0;
1021 }
1022
1023 pub fn set_preceding_port(&mut self, v: i32) {
1025 self.preceding_port = v;
1026 }
1027}
1028
1029impl ::protobuf::Message for CostGraphDef_Node_InputInfo {
1030 fn is_initialized(&self) -> bool {
1031 true
1032 }
1033
1034 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1035 while !is.eof()? {
1036 let (field_number, wire_type) = is.read_tag_unpack()?;
1037 match field_number {
1038 1 => {
1039 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1040 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1041 }
1042 let tmp = is.read_int32()?;
1043 self.preceding_node = tmp;
1044 },
1045 2 => {
1046 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1047 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1048 }
1049 let tmp = is.read_int32()?;
1050 self.preceding_port = tmp;
1051 },
1052 _ => {
1053 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1054 },
1055 };
1056 }
1057 ::std::result::Result::Ok(())
1058 }
1059
1060 #[allow(unused_variables)]
1062 fn compute_size(&self) -> u32 {
1063 let mut my_size = 0;
1064 if self.preceding_node != 0 {
1065 my_size += ::protobuf::rt::value_size(1, self.preceding_node, ::protobuf::wire_format::WireTypeVarint);
1066 }
1067 if self.preceding_port != 0 {
1068 my_size += ::protobuf::rt::value_size(2, self.preceding_port, ::protobuf::wire_format::WireTypeVarint);
1069 }
1070 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1071 self.cached_size.set(my_size);
1072 my_size
1073 }
1074
1075 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1076 if self.preceding_node != 0 {
1077 os.write_int32(1, self.preceding_node)?;
1078 }
1079 if self.preceding_port != 0 {
1080 os.write_int32(2, self.preceding_port)?;
1081 }
1082 os.write_unknown_fields(self.get_unknown_fields())?;
1083 ::std::result::Result::Ok(())
1084 }
1085
1086 fn get_cached_size(&self) -> u32 {
1087 self.cached_size.get()
1088 }
1089
1090 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1091 &self.unknown_fields
1092 }
1093
1094 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1095 &mut self.unknown_fields
1096 }
1097
1098 fn as_any(&self) -> &dyn (::std::any::Any) {
1099 self as &dyn (::std::any::Any)
1100 }
1101 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1102 self as &mut dyn (::std::any::Any)
1103 }
1104 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1105 self
1106 }
1107
1108 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1109 Self::descriptor_static()
1110 }
1111
1112 fn new() -> CostGraphDef_Node_InputInfo {
1113 CostGraphDef_Node_InputInfo::new()
1114 }
1115
1116 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1117 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
1118 unsafe {
1119 descriptor.get(|| {
1120 let mut fields = ::std::vec::Vec::new();
1121 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1122 "preceding_node",
1123 |m: &CostGraphDef_Node_InputInfo| { &m.preceding_node },
1124 |m: &mut CostGraphDef_Node_InputInfo| { &mut m.preceding_node },
1125 ));
1126 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1127 "preceding_port",
1128 |m: &CostGraphDef_Node_InputInfo| { &m.preceding_port },
1129 |m: &mut CostGraphDef_Node_InputInfo| { &mut m.preceding_port },
1130 ));
1131 ::protobuf::reflect::MessageDescriptor::new_pb_name::<CostGraphDef_Node_InputInfo>(
1132 "CostGraphDef.Node.InputInfo",
1133 fields,
1134 file_descriptor_proto()
1135 )
1136 })
1137 }
1138 }
1139
1140 fn default_instance() -> &'static CostGraphDef_Node_InputInfo {
1141 static mut instance: ::protobuf::lazy::Lazy<CostGraphDef_Node_InputInfo> = ::protobuf::lazy::Lazy::INIT;
1142 unsafe {
1143 instance.get(CostGraphDef_Node_InputInfo::new)
1144 }
1145 }
1146}
1147
1148impl ::protobuf::Clear for CostGraphDef_Node_InputInfo {
1149 fn clear(&mut self) {
1150 self.preceding_node = 0;
1151 self.preceding_port = 0;
1152 self.unknown_fields.clear();
1153 }
1154}
1155
1156impl ::std::fmt::Debug for CostGraphDef_Node_InputInfo {
1157 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1158 ::protobuf::text_format::fmt(self, f)
1159 }
1160}
1161
1162impl ::protobuf::reflect::ProtobufValue for CostGraphDef_Node_InputInfo {
1163 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1164 ::protobuf::reflect::ReflectValueRef::Message(self)
1165 }
1166}
1167
1168#[derive(PartialEq,Clone,Default)]
1169pub struct CostGraphDef_Node_OutputInfo {
1170 pub size: i64,
1172 pub alias_input_port: i64,
1173 pub shape: ::protobuf::SingularPtrField<super::tensor_shape::TensorShapeProto>,
1174 pub dtype: super::types::DataType,
1175 pub unknown_fields: ::protobuf::UnknownFields,
1177 pub cached_size: ::protobuf::CachedSize,
1178}
1179
1180impl<'a> ::std::default::Default for &'a CostGraphDef_Node_OutputInfo {
1181 fn default() -> &'a CostGraphDef_Node_OutputInfo {
1182 <CostGraphDef_Node_OutputInfo as ::protobuf::Message>::default_instance()
1183 }
1184}
1185
1186impl CostGraphDef_Node_OutputInfo {
1187 pub fn new() -> CostGraphDef_Node_OutputInfo {
1188 ::std::default::Default::default()
1189 }
1190
1191 pub fn get_size(&self) -> i64 {
1195 self.size
1196 }
1197 pub fn clear_size(&mut self) {
1198 self.size = 0;
1199 }
1200
1201 pub fn set_size(&mut self, v: i64) {
1203 self.size = v;
1204 }
1205
1206 pub fn get_alias_input_port(&self) -> i64 {
1210 self.alias_input_port
1211 }
1212 pub fn clear_alias_input_port(&mut self) {
1213 self.alias_input_port = 0;
1214 }
1215
1216 pub fn set_alias_input_port(&mut self, v: i64) {
1218 self.alias_input_port = v;
1219 }
1220
1221 pub fn get_shape(&self) -> &super::tensor_shape::TensorShapeProto {
1225 self.shape.as_ref().unwrap_or_else(|| super::tensor_shape::TensorShapeProto::default_instance())
1226 }
1227 pub fn clear_shape(&mut self) {
1228 self.shape.clear();
1229 }
1230
1231 pub fn has_shape(&self) -> bool {
1232 self.shape.is_some()
1233 }
1234
1235 pub fn set_shape(&mut self, v: super::tensor_shape::TensorShapeProto) {
1237 self.shape = ::protobuf::SingularPtrField::some(v);
1238 }
1239
1240 pub fn mut_shape(&mut self) -> &mut super::tensor_shape::TensorShapeProto {
1243 if self.shape.is_none() {
1244 self.shape.set_default();
1245 }
1246 self.shape.as_mut().unwrap()
1247 }
1248
1249 pub fn take_shape(&mut self) -> super::tensor_shape::TensorShapeProto {
1251 self.shape.take().unwrap_or_else(|| super::tensor_shape::TensorShapeProto::new())
1252 }
1253
1254 pub fn get_dtype(&self) -> super::types::DataType {
1258 self.dtype
1259 }
1260 pub fn clear_dtype(&mut self) {
1261 self.dtype = super::types::DataType::DT_INVALID;
1262 }
1263
1264 pub fn set_dtype(&mut self, v: super::types::DataType) {
1266 self.dtype = v;
1267 }
1268}
1269
1270impl ::protobuf::Message for CostGraphDef_Node_OutputInfo {
1271 fn is_initialized(&self) -> bool {
1272 for v in &self.shape {
1273 if !v.is_initialized() {
1274 return false;
1275 }
1276 };
1277 true
1278 }
1279
1280 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1281 while !is.eof()? {
1282 let (field_number, wire_type) = is.read_tag_unpack()?;
1283 match field_number {
1284 1 => {
1285 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1286 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1287 }
1288 let tmp = is.read_int64()?;
1289 self.size = tmp;
1290 },
1291 2 => {
1292 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1293 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1294 }
1295 let tmp = is.read_int64()?;
1296 self.alias_input_port = tmp;
1297 },
1298 3 => {
1299 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.shape)?;
1300 },
1301 4 => {
1302 ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.dtype, 4, &mut self.unknown_fields)?
1303 },
1304 _ => {
1305 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1306 },
1307 };
1308 }
1309 ::std::result::Result::Ok(())
1310 }
1311
1312 #[allow(unused_variables)]
1314 fn compute_size(&self) -> u32 {
1315 let mut my_size = 0;
1316 if self.size != 0 {
1317 my_size += ::protobuf::rt::value_size(1, self.size, ::protobuf::wire_format::WireTypeVarint);
1318 }
1319 if self.alias_input_port != 0 {
1320 my_size += ::protobuf::rt::value_size(2, self.alias_input_port, ::protobuf::wire_format::WireTypeVarint);
1321 }
1322 if let Some(ref v) = self.shape.as_ref() {
1323 let len = v.compute_size();
1324 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1325 }
1326 if self.dtype != super::types::DataType::DT_INVALID {
1327 my_size += ::protobuf::rt::enum_size(4, self.dtype);
1328 }
1329 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1330 self.cached_size.set(my_size);
1331 my_size
1332 }
1333
1334 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1335 if self.size != 0 {
1336 os.write_int64(1, self.size)?;
1337 }
1338 if self.alias_input_port != 0 {
1339 os.write_int64(2, self.alias_input_port)?;
1340 }
1341 if let Some(ref v) = self.shape.as_ref() {
1342 os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1343 os.write_raw_varint32(v.get_cached_size())?;
1344 v.write_to_with_cached_sizes(os)?;
1345 }
1346 if self.dtype != super::types::DataType::DT_INVALID {
1347 os.write_enum(4, self.dtype.value())?;
1348 }
1349 os.write_unknown_fields(self.get_unknown_fields())?;
1350 ::std::result::Result::Ok(())
1351 }
1352
1353 fn get_cached_size(&self) -> u32 {
1354 self.cached_size.get()
1355 }
1356
1357 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1358 &self.unknown_fields
1359 }
1360
1361 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1362 &mut self.unknown_fields
1363 }
1364
1365 fn as_any(&self) -> &dyn (::std::any::Any) {
1366 self as &dyn (::std::any::Any)
1367 }
1368 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1369 self as &mut dyn (::std::any::Any)
1370 }
1371 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1372 self
1373 }
1374
1375 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1376 Self::descriptor_static()
1377 }
1378
1379 fn new() -> CostGraphDef_Node_OutputInfo {
1380 CostGraphDef_Node_OutputInfo::new()
1381 }
1382
1383 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1384 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
1385 unsafe {
1386 descriptor.get(|| {
1387 let mut fields = ::std::vec::Vec::new();
1388 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
1389 "size",
1390 |m: &CostGraphDef_Node_OutputInfo| { &m.size },
1391 |m: &mut CostGraphDef_Node_OutputInfo| { &mut m.size },
1392 ));
1393 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
1394 "alias_input_port",
1395 |m: &CostGraphDef_Node_OutputInfo| { &m.alias_input_port },
1396 |m: &mut CostGraphDef_Node_OutputInfo| { &mut m.alias_input_port },
1397 ));
1398 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<super::tensor_shape::TensorShapeProto>>(
1399 "shape",
1400 |m: &CostGraphDef_Node_OutputInfo| { &m.shape },
1401 |m: &mut CostGraphDef_Node_OutputInfo| { &mut m.shape },
1402 ));
1403 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<super::types::DataType>>(
1404 "dtype",
1405 |m: &CostGraphDef_Node_OutputInfo| { &m.dtype },
1406 |m: &mut CostGraphDef_Node_OutputInfo| { &mut m.dtype },
1407 ));
1408 ::protobuf::reflect::MessageDescriptor::new_pb_name::<CostGraphDef_Node_OutputInfo>(
1409 "CostGraphDef.Node.OutputInfo",
1410 fields,
1411 file_descriptor_proto()
1412 )
1413 })
1414 }
1415 }
1416
1417 fn default_instance() -> &'static CostGraphDef_Node_OutputInfo {
1418 static mut instance: ::protobuf::lazy::Lazy<CostGraphDef_Node_OutputInfo> = ::protobuf::lazy::Lazy::INIT;
1419 unsafe {
1420 instance.get(CostGraphDef_Node_OutputInfo::new)
1421 }
1422 }
1423}
1424
1425impl ::protobuf::Clear for CostGraphDef_Node_OutputInfo {
1426 fn clear(&mut self) {
1427 self.size = 0;
1428 self.alias_input_port = 0;
1429 self.shape.clear();
1430 self.dtype = super::types::DataType::DT_INVALID;
1431 self.unknown_fields.clear();
1432 }
1433}
1434
1435impl ::std::fmt::Debug for CostGraphDef_Node_OutputInfo {
1436 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1437 ::protobuf::text_format::fmt(self, f)
1438 }
1439}
1440
1441impl ::protobuf::reflect::ProtobufValue for CostGraphDef_Node_OutputInfo {
1442 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1443 ::protobuf::reflect::ReflectValueRef::Message(self)
1444 }
1445}
1446
1447#[derive(PartialEq,Clone,Default)]
1448pub struct CostGraphDef_AggregatedCost {
1449 pub cost: f32,
1451 pub dimension: ::std::string::String,
1452 pub unknown_fields: ::protobuf::UnknownFields,
1454 pub cached_size: ::protobuf::CachedSize,
1455}
1456
1457impl<'a> ::std::default::Default for &'a CostGraphDef_AggregatedCost {
1458 fn default() -> &'a CostGraphDef_AggregatedCost {
1459 <CostGraphDef_AggregatedCost as ::protobuf::Message>::default_instance()
1460 }
1461}
1462
1463impl CostGraphDef_AggregatedCost {
1464 pub fn new() -> CostGraphDef_AggregatedCost {
1465 ::std::default::Default::default()
1466 }
1467
1468 pub fn get_cost(&self) -> f32 {
1472 self.cost
1473 }
1474 pub fn clear_cost(&mut self) {
1475 self.cost = 0.;
1476 }
1477
1478 pub fn set_cost(&mut self, v: f32) {
1480 self.cost = v;
1481 }
1482
1483 pub fn get_dimension(&self) -> &str {
1487 &self.dimension
1488 }
1489 pub fn clear_dimension(&mut self) {
1490 self.dimension.clear();
1491 }
1492
1493 pub fn set_dimension(&mut self, v: ::std::string::String) {
1495 self.dimension = v;
1496 }
1497
1498 pub fn mut_dimension(&mut self) -> &mut ::std::string::String {
1501 &mut self.dimension
1502 }
1503
1504 pub fn take_dimension(&mut self) -> ::std::string::String {
1506 ::std::mem::replace(&mut self.dimension, ::std::string::String::new())
1507 }
1508}
1509
1510impl ::protobuf::Message for CostGraphDef_AggregatedCost {
1511 fn is_initialized(&self) -> bool {
1512 true
1513 }
1514
1515 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1516 while !is.eof()? {
1517 let (field_number, wire_type) = is.read_tag_unpack()?;
1518 match field_number {
1519 1 => {
1520 if wire_type != ::protobuf::wire_format::WireTypeFixed32 {
1521 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1522 }
1523 let tmp = is.read_float()?;
1524 self.cost = tmp;
1525 },
1526 2 => {
1527 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.dimension)?;
1528 },
1529 _ => {
1530 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1531 },
1532 };
1533 }
1534 ::std::result::Result::Ok(())
1535 }
1536
1537 #[allow(unused_variables)]
1539 fn compute_size(&self) -> u32 {
1540 let mut my_size = 0;
1541 if self.cost != 0. {
1542 my_size += 5;
1543 }
1544 if !self.dimension.is_empty() {
1545 my_size += ::protobuf::rt::string_size(2, &self.dimension);
1546 }
1547 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1548 self.cached_size.set(my_size);
1549 my_size
1550 }
1551
1552 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1553 if self.cost != 0. {
1554 os.write_float(1, self.cost)?;
1555 }
1556 if !self.dimension.is_empty() {
1557 os.write_string(2, &self.dimension)?;
1558 }
1559 os.write_unknown_fields(self.get_unknown_fields())?;
1560 ::std::result::Result::Ok(())
1561 }
1562
1563 fn get_cached_size(&self) -> u32 {
1564 self.cached_size.get()
1565 }
1566
1567 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1568 &self.unknown_fields
1569 }
1570
1571 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1572 &mut self.unknown_fields
1573 }
1574
1575 fn as_any(&self) -> &dyn (::std::any::Any) {
1576 self as &dyn (::std::any::Any)
1577 }
1578 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1579 self as &mut dyn (::std::any::Any)
1580 }
1581 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1582 self
1583 }
1584
1585 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1586 Self::descriptor_static()
1587 }
1588
1589 fn new() -> CostGraphDef_AggregatedCost {
1590 CostGraphDef_AggregatedCost::new()
1591 }
1592
1593 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1594 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
1595 unsafe {
1596 descriptor.get(|| {
1597 let mut fields = ::std::vec::Vec::new();
1598 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeFloat>(
1599 "cost",
1600 |m: &CostGraphDef_AggregatedCost| { &m.cost },
1601 |m: &mut CostGraphDef_AggregatedCost| { &mut m.cost },
1602 ));
1603 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1604 "dimension",
1605 |m: &CostGraphDef_AggregatedCost| { &m.dimension },
1606 |m: &mut CostGraphDef_AggregatedCost| { &mut m.dimension },
1607 ));
1608 ::protobuf::reflect::MessageDescriptor::new_pb_name::<CostGraphDef_AggregatedCost>(
1609 "CostGraphDef.AggregatedCost",
1610 fields,
1611 file_descriptor_proto()
1612 )
1613 })
1614 }
1615 }
1616
1617 fn default_instance() -> &'static CostGraphDef_AggregatedCost {
1618 static mut instance: ::protobuf::lazy::Lazy<CostGraphDef_AggregatedCost> = ::protobuf::lazy::Lazy::INIT;
1619 unsafe {
1620 instance.get(CostGraphDef_AggregatedCost::new)
1621 }
1622 }
1623}
1624
1625impl ::protobuf::Clear for CostGraphDef_AggregatedCost {
1626 fn clear(&mut self) {
1627 self.cost = 0.;
1628 self.dimension.clear();
1629 self.unknown_fields.clear();
1630 }
1631}
1632
1633impl ::std::fmt::Debug for CostGraphDef_AggregatedCost {
1634 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1635 ::protobuf::text_format::fmt(self, f)
1636 }
1637}
1638
1639impl ::protobuf::reflect::ProtobufValue for CostGraphDef_AggregatedCost {
1640 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1641 ::protobuf::reflect::ReflectValueRef::Message(self)
1642 }
1643}
1644
1645static file_descriptor_proto_data: &'static [u8] = b"\
1646 \n*tensorflow/core/framework/cost_graph.proto\x12\ntensorflow\x1a,tensor\
1647 flow/core/framework/tensor_shape.proto\x1a%tensorflow/core/framework/typ\
1648 es.proto\"\x8c\t\n\x0cCostGraphDef\x121\n\x04node\x18\x01\x20\x03(\x0b2\
1649 \x1d.tensorflow.CostGraphDef.NodeR\x04node\x12;\n\x04cost\x18\x02\x20\
1650 \x03(\x0b2'.tensorflow.CostGraphDef.AggregatedCostR\x04cost\x1a\xc7\x07\
1651 \n\x04Node\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12\x16\n\x06de\
1652 vice\x18\x02\x20\x01(\tR\x06device\x12\x0e\n\x02id\x18\x03\x20\x01(\x05R\
1653 \x02id\x12F\n\ninput_info\x18\x04\x20\x03(\x0b2'.tensorflow.CostGraphDef\
1654 .Node.InputInfoR\tinputInfo\x12I\n\x0boutput_info\x18\x05\x20\x03(\x0b2(\
1655 .tensorflow.CostGraphDef.Node.OutputInfoR\noutputInfo\x122\n\x15temporar\
1656 y_memory_size\x18\x06\x20\x01(\x03R\x13temporaryMemorySize\x124\n\x16per\
1657 sistent_memory_size\x18\x0c\x20\x01(\x03R\x14persistentMemorySize\x125\n\
1658 \x15host_temp_memory_size\x18\n\x20\x01(\x03R\x12hostTempMemorySizeB\x02\
1659 \x18\x01\x129\n\x17device_temp_memory_size\x18\x0b\x20\x01(\x03R\x14devi\
1660 ceTempMemorySizeB\x02\x18\x01\x12E\n\x1ddevice_persistent_memory_size\
1661 \x18\x10\x20\x01(\x03R\x1adevicePersistentMemorySizeB\x02\x18\x01\x12!\n\
1662 \x0ccompute_cost\x18\t\x20\x01(\x03R\x0bcomputeCost\x12!\n\x0ccompute_ti\
1663 me\x18\x0e\x20\x01(\x03R\x0bcomputeTime\x12\x1f\n\x0bmemory_time\x18\x0f\
1664 \x20\x01(\x03R\nmemoryTime\x12\x19\n\x08is_final\x18\x07\x20\x01(\x08R\
1665 \x07isFinal\x12#\n\rcontrol_input\x18\x08\x20\x03(\x05R\x0ccontrolInput\
1666 \x12\x1e\n\ninaccurate\x18\x11\x20\x01(\x08R\ninaccurate\x1aY\n\tInputIn\
1667 fo\x12%\n\x0epreceding_node\x18\x01\x20\x01(\x05R\rprecedingNode\x12%\n\
1668 \x0epreceding_port\x18\x02\x20\x01(\x05R\rprecedingPort\x1a\xaa\x01\n\nO\
1669 utputInfo\x12\x12\n\x04size\x18\x01\x20\x01(\x03R\x04size\x12(\n\x10alia\
1670 s_input_port\x18\x02\x20\x01(\x03R\x0ealiasInputPort\x122\n\x05shape\x18\
1671 \x03\x20\x01(\x0b2\x1c.tensorflow.TensorShapeProtoR\x05shape\x12*\n\x05d\
1672 type\x18\x04\x20\x01(\x0e2\x14.tensorflow.DataTypeR\x05dtype\x1aB\n\x0eA\
1673 ggregatedCost\x12\x12\n\x04cost\x18\x01\x20\x01(\x02R\x04cost\x12\x1c\n\
1674 \tdimension\x18\x02\x20\x01(\tR\tdimensionB\x83\x01\n\x18org.tensorflow.\
1675 frameworkB\x0fCostGraphProtosP\x01ZQgithub.com/tensorflow/tensorflow/ten\
1676 sorflow/go/core/framework/cost_graph_go_proto\xf8\x01\x01J\xf7\x1a\n\x06\
1677 \x12\x04\0\0X\x01\n\x08\n\x01\x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\
1678 \x03\x02\0\x13\n\t\n\x02\x03\0\x12\x03\x04\06\n\t\n\x02\x03\x01\x12\x03\
1679 \x05\0/\n\x08\n\x01\x08\x12\x03\x07\0\x1f\n\t\n\x02\x08\x1f\x12\x03\x07\
1680 \0\x1f\n\x08\n\x01\x08\x12\x03\x08\00\n\t\n\x02\x08\x08\x12\x03\x08\00\n\
1681 \x08\n\x01\x08\x12\x03\t\0\"\n\t\n\x02\x08\n\x12\x03\t\0\"\n\x08\n\x01\
1682 \x08\x12\x03\n\01\n\t\n\x02\x08\x01\x12\x03\n\01\n\x08\n\x01\x08\x12\x03\
1683 \x0b\0h\n\t\n\x02\x08\x0b\x12\x03\x0b\0h\n\n\n\x02\x04\0\x12\x04\r\0X\
1684 \x01\n\n\n\x03\x04\0\x01\x12\x03\r\x08\x14\n\x0c\n\x04\x04\0\x03\0\x12\
1685 \x04\x0e\x02L\x03\n\x0c\n\x05\x04\0\x03\0\x01\x12\x03\x0e\n\x0e\nA\n\x06\
1686 \x04\0\x03\0\x02\0\x12\x03\x10\x04\x14\x1a2\x20The\x20name\x20of\x20the\
1687 \x20node.\x20Names\x20are\x20globally\x20unique.\n\n\x0e\n\x07\x04\0\x03\
1688 \0\x02\0\x05\x12\x03\x10\x04\n\n\x0e\n\x07\x04\0\x03\0\x02\0\x01\x12\x03\
1689 \x10\x0b\x0f\n\x0e\n\x07\x04\0\x03\0\x02\0\x03\x12\x03\x10\x12\x13\n\x8a\
1690 \x01\n\x06\x04\0\x03\0\x02\x01\x12\x03\x14\x04\x16\x1a{\x20The\x20device\
1691 \x20of\x20the\x20node.\x20Can\x20be\x20empty\x20if\x20the\x20node\x20is\
1692 \x20mapped\x20to\x20the\n\x20default\x20partition\x20or\x20partitioning\
1693 \x20hasn't\x20been\x20run\x20yet.\n\n\x0e\n\x07\x04\0\x03\0\x02\x01\x05\
1694 \x12\x03\x14\x04\n\n\x0e\n\x07\x04\0\x03\0\x02\x01\x01\x12\x03\x14\x0b\
1695 \x11\n\x0e\n\x07\x04\0\x03\0\x02\x01\x03\x12\x03\x14\x14\x15\nQ\n\x06\
1696 \x04\0\x03\0\x02\x02\x12\x03\x17\x04\x11\x1aB\x20The\x20id\x20of\x20the\
1697 \x20node.\x20Node\x20ids\x20are\x20only\x20unique\x20inside\x20a\x20part\
1698 ition.\n\n\x0e\n\x07\x04\0\x03\0\x02\x02\x05\x12\x03\x17\x04\t\n\x0e\n\
1699 \x07\x04\0\x03\0\x02\x02\x01\x12\x03\x17\n\x0c\n\x0e\n\x07\x04\0\x03\0\
1700 \x02\x02\x03\x12\x03\x17\x0f\x10\n\xc1\x01\n\x06\x04\0\x03\0\x03\0\x12\
1701 \x04\x1c\x04\x1f\x05\x1a\xb0\x01\x20Inputs\x20of\x20this\x20node.\x20The\
1702 y\x20must\x20be\x20executed\x20before\x20this\x20node\x20can\x20be\n\x20\
1703 executed.\x20An\x20input\x20is\x20a\x20particular\x20output\x20of\x20ano\
1704 ther\x20node,\x20specified\n\x20by\x20the\x20node\x20id\x20and\x20the\
1705 \x20output\x20index.\n\n\x0e\n\x07\x04\0\x03\0\x03\0\x01\x12\x03\x1c\x0c\
1706 \x15\n\x0f\n\x08\x04\0\x03\0\x03\0\x02\0\x12\x03\x1d\x06\x1f\n\x10\n\t\
1707 \x04\0\x03\0\x03\0\x02\0\x05\x12\x03\x1d\x06\x0b\n\x10\n\t\x04\0\x03\0\
1708 \x03\0\x02\0\x01\x12\x03\x1d\x0c\x1a\n\x10\n\t\x04\0\x03\0\x03\0\x02\0\
1709 \x03\x12\x03\x1d\x1d\x1e\n\x0f\n\x08\x04\0\x03\0\x03\0\x02\x01\x12\x03\
1710 \x1e\x06\x1f\n\x10\n\t\x04\0\x03\0\x03\0\x02\x01\x05\x12\x03\x1e\x06\x0b\
1711 \n\x10\n\t\x04\0\x03\0\x03\0\x02\x01\x01\x12\x03\x1e\x0c\x1a\n\x10\n\t\
1712 \x04\0\x03\0\x03\0\x02\x01\x03\x12\x03\x1e\x1d\x1e\n\r\n\x06\x04\0\x03\0\
1713 \x02\x03\x12\x03\x20\x04&\n\x0e\n\x07\x04\0\x03\0\x02\x03\x04\x12\x03\
1714 \x20\x04\x0c\n\x0e\n\x07\x04\0\x03\0\x02\x03\x06\x12\x03\x20\r\x16\n\x0e\
1715 \n\x07\x04\0\x03\0\x02\x03\x01\x12\x03\x20\x17!\n\x0e\n\x07\x04\0\x03\0\
1716 \x02\x03\x03\x12\x03\x20$%\n'\n\x06\x04\0\x03\0\x03\x01\x12\x04#\x04+\
1717 \x05\x1a\x17\x20Outputs\x20of\x20this\x20node.\n\n\x0e\n\x07\x04\0\x03\0\
1718 \x03\x01\x01\x12\x03#\x0c\x16\n\x0f\n\x08\x04\0\x03\0\x03\x01\x02\0\x12\
1719 \x03$\x06\x15\n\x10\n\t\x04\0\x03\0\x03\x01\x02\0\x05\x12\x03$\x06\x0b\n\
1720 \x10\n\t\x04\0\x03\0\x03\x01\x02\0\x01\x12\x03$\x0c\x10\n\x10\n\t\x04\0\
1721 \x03\0\x03\x01\x02\0\x03\x12\x03$\x13\x14\n\xaf\x01\n\x08\x04\0\x03\0\
1722 \x03\x01\x02\x01\x12\x03(\x06!\x1a\x9d\x01\x20If\x20>=\x200,\x20the\x20o\
1723 utput\x20is\x20an\x20alias\x20of\x20an\x20input.\x20Note\x20that\x20an\
1724 \x20alias\x20input\n\x20may\x20itself\x20be\x20an\x20alias.\x20The\x20al\
1725 gorithm\x20will\x20therefore\x20need\x20to\x20follow\n\x20those\x20point\
1726 ers.\n\n\x10\n\t\x04\0\x03\0\x03\x01\x02\x01\x05\x12\x03(\x06\x0b\n\x10\
1727 \n\t\x04\0\x03\0\x03\x01\x02\x01\x01\x12\x03(\x0c\x1c\n\x10\n\t\x04\0\
1728 \x03\0\x03\x01\x02\x01\x03\x12\x03(\x1f\x20\n\x0f\n\x08\x04\0\x03\0\x03\
1729 \x01\x02\x02\x12\x03)\x06!\n\x10\n\t\x04\0\x03\0\x03\x01\x02\x02\x06\x12\
1730 \x03)\x06\x16\n\x10\n\t\x04\0\x03\0\x03\x01\x02\x02\x01\x12\x03)\x17\x1c\
1731 \n\x10\n\t\x04\0\x03\0\x03\x01\x02\x02\x03\x12\x03)\x1f\x20\n\x0f\n\x08\
1732 \x04\0\x03\0\x03\x01\x02\x03\x12\x03*\x06\x19\n\x10\n\t\x04\0\x03\0\x03\
1733 \x01\x02\x03\x06\x12\x03*\x06\x0e\n\x10\n\t\x04\0\x03\0\x03\x01\x02\x03\
1734 \x01\x12\x03*\x0f\x14\n\x10\n\t\x04\0\x03\0\x03\x01\x02\x03\x03\x12\x03*\
1735 \x17\x18\n\r\n\x06\x04\0\x03\0\x02\x04\x12\x03,\x04(\n\x0e\n\x07\x04\0\
1736 \x03\0\x02\x04\x04\x12\x03,\x04\x0c\n\x0e\n\x07\x04\0\x03\0\x02\x04\x06\
1737 \x12\x03,\r\x17\n\x0e\n\x07\x04\0\x03\0\x02\x04\x01\x12\x03,\x18#\n\x0e\
1738 \n\x07\x04\0\x03\0\x02\x04\x03\x12\x03,&'\n4\n\x06\x04\0\x03\0\x02\x05\
1739 \x12\x03/\x04$\x1a%\x20Temporary\x20memory\x20used\x20by\x20this\x20node\
1740 .\n\n\x0e\n\x07\x04\0\x03\0\x02\x05\x05\x12\x03/\x04\t\n\x0e\n\x07\x04\0\
1741 \x03\0\x02\x05\x01\x12\x03/\n\x1f\n\x0e\n\x07\x04\0\x03\0\x02\x05\x03\
1742 \x12\x03/\"#\n5\n\x06\x04\0\x03\0\x02\x06\x12\x032\x04&\x1a&\x20Persiste\
1743 nt\x20memory\x20used\x20by\x20this\x20node.\n\n\x0e\n\x07\x04\0\x03\0\
1744 \x02\x06\x05\x12\x032\x04\t\n\x0e\n\x07\x04\0\x03\0\x02\x06\x01\x12\x032\
1745 \n\x20\n\x0e\n\x07\x04\0\x03\0\x02\x06\x03\x12\x032#%\n\r\n\x06\x04\0\
1746 \x03\0\x02\x07\x12\x034\x049\n\x0e\n\x07\x04\0\x03\0\x02\x07\x05\x12\x03\
1747 4\x04\t\n\x0e\n\x07\x04\0\x03\0\x02\x07\x01\x12\x034\n\x1f\n\x0e\n\x07\
1748 \x04\0\x03\0\x02\x07\x03\x12\x034\"$\n\x0e\n\x07\x04\0\x03\0\x02\x07\x08\
1749 \x12\x034%8\n\x0f\n\x08\x04\0\x03\0\x02\x07\x08\x03\x12\x034&7\n\r\n\x06\
1750 \x04\0\x03\0\x02\x08\x12\x035\x04;\n\x0e\n\x07\x04\0\x03\0\x02\x08\x05\
1751 \x12\x035\x04\t\n\x0e\n\x07\x04\0\x03\0\x02\x08\x01\x12\x035\n!\n\x0e\n\
1752 \x07\x04\0\x03\0\x02\x08\x03\x12\x035$&\n\x0e\n\x07\x04\0\x03\0\x02\x08\
1753 \x08\x12\x035':\n\x0f\n\x08\x04\0\x03\0\x02\x08\x08\x03\x12\x035(9\n\r\n\
1754 \x06\x04\0\x03\0\x02\t\x12\x036\x04A\n\x0e\n\x07\x04\0\x03\0\x02\t\x05\
1755 \x12\x036\x04\t\n\x0e\n\x07\x04\0\x03\0\x02\t\x01\x12\x036\n'\n\x0e\n\
1756 \x07\x04\0\x03\0\x02\t\x03\x12\x036*,\n\x0e\n\x07\x04\0\x03\0\x02\t\x08\
1757 \x12\x036-@\n\x0f\n\x08\x04\0\x03\0\x02\t\x08\x03\x12\x036.?\nR\n\x06\
1758 \x04\0\x03\0\x02\n\x12\x039\x04\x1b\x1aC\x20Estimate\x20of\x20the\x20com\
1759 putational\x20cost\x20of\x20this\x20node,\x20in\x20microseconds.\n\n\x0e\
1760 \n\x07\x04\0\x03\0\x02\n\x05\x12\x039\x04\t\n\x0e\n\x07\x04\0\x03\0\x02\
1761 \n\x01\x12\x039\n\x16\n\x0e\n\x07\x04\0\x03\0\x02\n\x03\x12\x039\x19\x1a\
1762 \n^\n\x06\x04\0\x03\0\x02\x0b\x12\x03=\x04\x1c\x1aO\x20Analytical\x20est\
1763 imate\x20of\x20the\x20computational\x20cost\x20of\x20this\x20node,\x20in\
1764 \n\x20microseconds.\n\n\x0e\n\x07\x04\0\x03\0\x02\x0b\x05\x12\x03=\x04\t\
1765 \n\x0e\n\x07\x04\0\x03\0\x02\x0b\x01\x12\x03=\n\x16\n\x0e\n\x07\x04\0\
1766 \x03\0\x02\x0b\x03\x12\x03=\x19\x1b\n^\n\x06\x04\0\x03\0\x02\x0c\x12\x03\
1767 A\x04\x1b\x1aO\x20Analytical\x20estimate\x20of\x20the\x20memory\x20acces\
1768 s\x20cost\x20of\x20this\x20node,\x20in\n\x20microseconds.\n\n\x0e\n\x07\
1769 \x04\0\x03\0\x02\x0c\x05\x12\x03A\x04\t\n\x0e\n\x07\x04\0\x03\0\x02\x0c\
1770 \x01\x12\x03A\n\x15\n\x0e\n\x07\x04\0\x03\0\x02\x0c\x03\x12\x03A\x18\x1a\
1771 \n\x9d\x01\n\x06\x04\0\x03\0\x02\r\x12\x03E\x04\x16\x1a\x8d\x01\x20If\
1772 \x20true,\x20the\x20output\x20is\x20permanent:\x20it\x20can't\x20be\x20d\
1773 iscarded,\x20because\x20this\n\x20node\x20is\x20part\x20of\x20the\x20\"f\
1774 inal\x20output\".\x20Nodes\x20may\x20depend\x20on\x20final\x20nodes.\n\n\
1775 \x0e\n\x07\x04\0\x03\0\x02\r\x05\x12\x03E\x04\x08\n\x0e\n\x07\x04\0\x03\
1776 \0\x02\r\x01\x12\x03E\t\x11\n\x0e\n\x07\x04\0\x03\0\x02\r\x03\x12\x03E\
1777 \x14\x15\n9\n\x06\x04\0\x03\0\x02\x0e\x12\x03H\x04%\x1a*\x20Ids\x20of\
1778 \x20the\x20control\x20inputs\x20for\x20this\x20node.\n\n\x0e\n\x07\x04\0\
1779 \x03\0\x02\x0e\x04\x12\x03H\x04\x0c\n\x0e\n\x07\x04\0\x03\0\x02\x0e\x05\
1780 \x12\x03H\r\x12\n\x0e\n\x07\x04\0\x03\0\x02\x0e\x01\x12\x03H\x13\x20\n\
1781 \x0e\n\x07\x04\0\x03\0\x02\x0e\x03\x12\x03H#$\n*\n\x06\x04\0\x03\0\x02\
1782 \x0f\x12\x03K\x04\x19\x1a\x1b\x20Are\x20the\x20costs\x20inaccurate?\n\n\
1783 \x0e\n\x07\x04\0\x03\0\x02\x0f\x05\x12\x03K\x04\x08\n\x0e\n\x07\x04\0\
1784 \x03\0\x02\x0f\x01\x12\x03K\t\x13\n\x0e\n\x07\x04\0\x03\0\x02\x0f\x03\
1785 \x12\x03K\x16\x18\n\x0b\n\x04\x04\0\x02\0\x12\x03M\x02\x19\n\x0c\n\x05\
1786 \x04\0\x02\0\x04\x12\x03M\x02\n\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03M\x0b\
1787 \x0f\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03M\x10\x14\n\x0c\n\x05\x04\0\x02\
1788 \0\x03\x12\x03M\x17\x18\nQ\n\x04\x04\0\x03\x01\x12\x04P\x02V\x03\x1aC\
1789 \x20Total\x20cost\x20of\x20this\x20graph,\x20typically\x20used\x20for\
1790 \x20balancing\x20decisions.\n\n\x0c\n\x05\x04\0\x03\x01\x01\x12\x03P\n\
1791 \x18\n'\n\x06\x04\0\x03\x01\x02\0\x12\x03R\x04\x13\x1a\x18\x20Aggregated\
1792 \x20cost\x20value.\n\n\x0e\n\x07\x04\0\x03\x01\x02\0\x05\x12\x03R\x04\t\
1793 \n\x0e\n\x07\x04\0\x03\x01\x02\0\x01\x12\x03R\n\x0e\n\x0e\n\x07\x04\0\
1794 \x03\x01\x02\0\x03\x12\x03R\x11\x12\nQ\n\x06\x04\0\x03\x01\x02\x01\x12\
1795 \x03U\x04\x19\x1aB\x20Aggregated\x20cost\x20dimension\x20(e.g.\x20'memor\
1796 y',\x20'compute',\x20'network').\n\n\x0e\n\x07\x04\0\x03\x01\x02\x01\x05\
1797 \x12\x03U\x04\n\n\x0e\n\x07\x04\0\x03\x01\x02\x01\x01\x12\x03U\x0b\x14\n\
1798 \x0e\n\x07\x04\0\x03\x01\x02\x01\x03\x12\x03U\x17\x18\n\x0b\n\x04\x04\0\
1799 \x02\x01\x12\x03W\x02#\n\x0c\n\x05\x04\0\x02\x01\x04\x12\x03W\x02\n\n\
1800 \x0c\n\x05\x04\0\x02\x01\x06\x12\x03W\x0b\x19\n\x0c\n\x05\x04\0\x02\x01\
1801 \x01\x12\x03W\x1a\x1e\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03W!\"b\x06prot\
1802 o3\
1803";
1804
1805static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT;
1806
1807fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
1808 ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap()
1809}
1810
1811pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
1812 unsafe {
1813 file_descriptor_proto_lazy.get(|| {
1814 parse_descriptor_proto()
1815 })
1816 }
1817}