TT-MLIR
program_generated.h
Go to the documentation of this file.
1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_PROGRAM_TT_TARGET_TTNN_H_
5 #define FLATBUFFERS_GENERATED_PROGRAM_TT_TARGET_TTNN_H_
6 
7 #include "flatbuffers/flatbuffers.h"
8 
9 // Ensure the included flatbuffers.h is the same version as when this file was
10 // generated, otherwise it may not be compatible.
11 static_assert(FLATBUFFERS_VERSION_MAJOR == 24 &&
12  FLATBUFFERS_VERSION_MINOR == 3 &&
13  FLATBUFFERS_VERSION_REVISION == 25,
14  "Non-compatible flatbuffers version included");
15 
16 #include "debug_info_generated.h"
17 #include "types_generated.h"
18 
19 namespace tt {
20 namespace target {
21 namespace ttnn {
22 
23 struct GetDeviceOp;
24 struct GetDeviceOpBuilder;
25 
26 struct ToMemoryConfigOp;
27 struct ToMemoryConfigOpBuilder;
28 
29 struct ToLayoutOp;
30 struct ToLayoutOpBuilder;
31 
32 struct ToDeviceOp;
33 struct ToDeviceOpBuilder;
34 
35 struct FromDeviceOp;
36 struct FromDeviceOpBuilder;
37 
38 struct EmptyOp;
39 struct EmptyOpBuilder;
40 
41 struct FullOp;
42 struct FullOpBuilder;
43 
44 struct EltwiseOp;
45 struct EltwiseOpBuilder;
46 
47 struct ReductionOp;
48 struct ReductionOpBuilder;
49 
50 struct EmbeddingOp;
51 struct EmbeddingOpBuilder;
52 
53 struct SoftmaxOp;
54 struct SoftmaxOpBuilder;
55 
56 struct TransposeOp;
57 struct TransposeOpBuilder;
58 
59 struct ConcatOp;
60 struct ConcatOpBuilder;
61 
62 struct ReshapeOp;
63 struct ReshapeOpBuilder;
64 
65 struct MatmulOp;
66 struct MatmulOpBuilder;
67 
68 struct Conv2dOp;
69 struct Conv2dOpBuilder;
70 
71 struct MaxPool2dOp;
72 struct MaxPool2dOpBuilder;
73 
74 struct DeallocOp;
75 struct DeallocOpBuilder;
76 
77 struct Operation;
78 struct OperationBuilder;
79 
80 struct Program;
81 struct ProgramBuilder;
82 
83 enum class EltwiseOpType : uint32_t {
84  Add = 0,
85  Multiply = 1,
86  Subtract = 2,
87  Relu = 3,
88  GreaterEqual = 4,
89  Sqrt = 5,
90  Div = 6,
91  Sigmoid = 7,
92  Reciprocal = 8,
93  Exp = 9,
94  Maximum = 10,
95  Abs = 11,
96  Neg = 12,
97  MIN = Add,
98  MAX = Neg
99 };
100 
101 inline const EltwiseOpType (&EnumValuesEltwiseOpType())[13] {
102  static const EltwiseOpType values[] = {
116  };
117  return values;
118 }
119 
120 inline const char * const *EnumNamesEltwiseOpType() {
121  static const char * const names[14] = {
122  "Add",
123  "Multiply",
124  "Subtract",
125  "Relu",
126  "GreaterEqual",
127  "Sqrt",
128  "Div",
129  "Sigmoid",
130  "Reciprocal",
131  "Exp",
132  "Maximum",
133  "Abs",
134  "Neg",
135  nullptr
136  };
137  return names;
138 }
139 
140 inline const char *EnumNameEltwiseOpType(EltwiseOpType e) {
141  if (::flatbuffers::IsOutRange(e, EltwiseOpType::Add, EltwiseOpType::Neg)) return "";
142  const size_t index = static_cast<size_t>(e);
143  return EnumNamesEltwiseOpType()[index];
144 }
145 
146 enum class ReductionOpType : uint32_t {
147  Sum = 0,
148  Mean = 1,
149  Max = 2,
150  MIN = Sum,
151  MAX = Max
152 };
153 
155  static const ReductionOpType values[] = {
159  };
160  return values;
161 }
162 
163 inline const char * const *EnumNamesReductionOpType() {
164  static const char * const names[4] = {
165  "Sum",
166  "Mean",
167  "Max",
168  nullptr
169  };
170  return names;
171 }
172 
174  if (::flatbuffers::IsOutRange(e, ReductionOpType::Sum, ReductionOpType::Max)) return "";
175  const size_t index = static_cast<size_t>(e);
176  return EnumNamesReductionOpType()[index];
177 }
178 
179 enum class OpType : uint8_t {
180  NONE = 0,
181  GetDeviceOp = 1,
182  ToMemoryConfigOp = 2,
183  ToLayoutOp = 3,
184  ToDeviceOp = 4,
185  FromDeviceOp = 5,
186  EmptyOp = 6,
187  FullOp = 7,
188  EltwiseOp = 8,
189  MatmulOp = 9,
190  ReductionOp = 10,
191  EmbeddingOp = 11,
192  SoftmaxOp = 12,
193  TransposeOp = 13,
194  Conv2dOp = 14,
195  ConcatOp = 15,
196  ReshapeOp = 16,
197  MaxPool2dOp = 17,
198  DeallocOp = 18,
199  MIN = NONE,
200  MAX = DeallocOp
201 };
202 
203 inline const OpType (&EnumValuesOpType())[19] {
204  static const OpType values[] = {
205  OpType::NONE,
224  };
225  return values;
226 }
227 
228 inline const char * const *EnumNamesOpType() {
229  static const char * const names[20] = {
230  "NONE",
231  "GetDeviceOp",
232  "ToMemoryConfigOp",
233  "ToLayoutOp",
234  "ToDeviceOp",
235  "FromDeviceOp",
236  "EmptyOp",
237  "FullOp",
238  "EltwiseOp",
239  "MatmulOp",
240  "ReductionOp",
241  "EmbeddingOp",
242  "SoftmaxOp",
243  "TransposeOp",
244  "Conv2dOp",
245  "ConcatOp",
246  "ReshapeOp",
247  "MaxPool2dOp",
248  "DeallocOp",
249  nullptr
250  };
251  return names;
252 }
253 
254 inline const char *EnumNameOpType(OpType e) {
255  if (::flatbuffers::IsOutRange(e, OpType::NONE, OpType::DeallocOp)) return "";
256  const size_t index = static_cast<size_t>(e);
257  return EnumNamesOpType()[index];
258 }
259 
260 template<typename T> struct OpTypeTraits {
262 };
263 
264 template<> struct OpTypeTraits<tt::target::ttnn::GetDeviceOp> {
266 };
267 
268 template<> struct OpTypeTraits<tt::target::ttnn::ToMemoryConfigOp> {
270 };
271 
272 template<> struct OpTypeTraits<tt::target::ttnn::ToLayoutOp> {
274 };
275 
276 template<> struct OpTypeTraits<tt::target::ttnn::ToDeviceOp> {
278 };
279 
280 template<> struct OpTypeTraits<tt::target::ttnn::FromDeviceOp> {
282 };
283 
284 template<> struct OpTypeTraits<tt::target::ttnn::EmptyOp> {
286 };
287 
288 template<> struct OpTypeTraits<tt::target::ttnn::FullOp> {
290 };
291 
292 template<> struct OpTypeTraits<tt::target::ttnn::EltwiseOp> {
294 };
295 
296 template<> struct OpTypeTraits<tt::target::ttnn::MatmulOp> {
298 };
299 
300 template<> struct OpTypeTraits<tt::target::ttnn::ReductionOp> {
302 };
303 
304 template<> struct OpTypeTraits<tt::target::ttnn::EmbeddingOp> {
306 };
307 
308 template<> struct OpTypeTraits<tt::target::ttnn::SoftmaxOp> {
310 };
311 
312 template<> struct OpTypeTraits<tt::target::ttnn::TransposeOp> {
314 };
315 
316 template<> struct OpTypeTraits<tt::target::ttnn::Conv2dOp> {
318 };
319 
320 template<> struct OpTypeTraits<tt::target::ttnn::ConcatOp> {
322 };
323 
324 template<> struct OpTypeTraits<tt::target::ttnn::ReshapeOp> {
326 };
327 
328 template<> struct OpTypeTraits<tt::target::ttnn::MaxPool2dOp> {
330 };
331 
332 template<> struct OpTypeTraits<tt::target::ttnn::DeallocOp> {
334 };
335 
336 bool VerifyOpType(::flatbuffers::Verifier &verifier, const void *obj, OpType type);
337 bool VerifyOpTypeVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<OpType> *types);
338 
339 struct GetDeviceOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
341  struct Traits;
342  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
343  VT_MESH = 4,
345  VT_OUT = 8
346  };
347  const tt::target::Dim2d *mesh() const {
348  return GetStruct<const tt::target::Dim2d *>(VT_MESH);
349  }
350  const ::flatbuffers::Vector<uint32_t> *chip_ids() const {
351  return GetPointer<const ::flatbuffers::Vector<uint32_t> *>(VT_CHIP_IDS);
352  }
353  const tt::target::DeviceRef *out() const {
354  return GetPointer<const tt::target::DeviceRef *>(VT_OUT);
355  }
356  bool Verify(::flatbuffers::Verifier &verifier) const {
357  return VerifyTableStart(verifier) &&
358  VerifyField<tt::target::Dim2d>(verifier, VT_MESH, 4) &&
359  VerifyOffset(verifier, VT_CHIP_IDS) &&
360  verifier.VerifyVector(chip_ids()) &&
361  VerifyOffset(verifier, VT_OUT) &&
362  verifier.VerifyTable(out()) &&
363  verifier.EndTable();
364  }
365 };
366 
369  ::flatbuffers::FlatBufferBuilder &fbb_;
370  ::flatbuffers::uoffset_t start_;
371  void add_mesh(const tt::target::Dim2d *mesh) {
372  fbb_.AddStruct(GetDeviceOp::VT_MESH, mesh);
373  }
374  void add_chip_ids(::flatbuffers::Offset<::flatbuffers::Vector<uint32_t>> chip_ids) {
375  fbb_.AddOffset(GetDeviceOp::VT_CHIP_IDS, chip_ids);
376  }
377  void add_out(::flatbuffers::Offset<tt::target::DeviceRef> out) {
378  fbb_.AddOffset(GetDeviceOp::VT_OUT, out);
379  }
380  explicit GetDeviceOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
381  : fbb_(_fbb) {
382  start_ = fbb_.StartTable();
383  }
384  ::flatbuffers::Offset<GetDeviceOp> Finish() {
385  const auto end = fbb_.EndTable(start_);
386  auto o = ::flatbuffers::Offset<GetDeviceOp>(end);
387  return o;
388  }
389 };
390 
391 inline ::flatbuffers::Offset<GetDeviceOp> CreateGetDeviceOp(
392  ::flatbuffers::FlatBufferBuilder &_fbb,
393  const tt::target::Dim2d *mesh = nullptr,
394  ::flatbuffers::Offset<::flatbuffers::Vector<uint32_t>> chip_ids = 0,
395  ::flatbuffers::Offset<tt::target::DeviceRef> out = 0) {
396  GetDeviceOpBuilder builder_(_fbb);
397  builder_.add_out(out);
398  builder_.add_chip_ids(chip_ids);
399  builder_.add_mesh(mesh);
400  return builder_.Finish();
401 }
402 
404  using type = GetDeviceOp;
405  static auto constexpr Create = CreateGetDeviceOp;
406 };
407 
408 inline ::flatbuffers::Offset<GetDeviceOp> CreateGetDeviceOpDirect(
409  ::flatbuffers::FlatBufferBuilder &_fbb,
410  const tt::target::Dim2d *mesh = nullptr,
411  const std::vector<uint32_t> *chip_ids = nullptr,
412  ::flatbuffers::Offset<tt::target::DeviceRef> out = 0) {
413  auto chip_ids__ = chip_ids ? _fbb.CreateVector<uint32_t>(*chip_ids) : 0;
415  _fbb,
416  mesh,
417  chip_ids__,
418  out);
419 }
420 
421 struct ToMemoryConfigOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
423  struct Traits;
424  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
425  VT_IN0 = 4,
427  VT_OUT = 8
428  };
429  const tt::target::TensorRef *in0() const {
430  return GetPointer<const tt::target::TensorRef *>(VT_IN0);
431  }
432  const tt::target::DeviceRef *device() const {
433  return GetPointer<const tt::target::DeviceRef *>(VT_DEVICE);
434  }
435  const tt::target::TensorRef *out() const {
436  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
437  }
438  bool Verify(::flatbuffers::Verifier &verifier) const {
439  return VerifyTableStart(verifier) &&
440  VerifyOffset(verifier, VT_IN0) &&
441  verifier.VerifyTable(in0()) &&
442  VerifyOffset(verifier, VT_DEVICE) &&
443  verifier.VerifyTable(device()) &&
444  VerifyOffset(verifier, VT_OUT) &&
445  verifier.VerifyTable(out()) &&
446  verifier.EndTable();
447  }
448 };
449 
452  ::flatbuffers::FlatBufferBuilder &fbb_;
453  ::flatbuffers::uoffset_t start_;
454  void add_in0(::flatbuffers::Offset<tt::target::TensorRef> in0) {
455  fbb_.AddOffset(ToMemoryConfigOp::VT_IN0, in0);
456  }
457  void add_device(::flatbuffers::Offset<tt::target::DeviceRef> device) {
458  fbb_.AddOffset(ToMemoryConfigOp::VT_DEVICE, device);
459  }
460  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
461  fbb_.AddOffset(ToMemoryConfigOp::VT_OUT, out);
462  }
463  explicit ToMemoryConfigOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
464  : fbb_(_fbb) {
465  start_ = fbb_.StartTable();
466  }
467  ::flatbuffers::Offset<ToMemoryConfigOp> Finish() {
468  const auto end = fbb_.EndTable(start_);
469  auto o = ::flatbuffers::Offset<ToMemoryConfigOp>(end);
470  return o;
471  }
472 };
473 
474 inline ::flatbuffers::Offset<ToMemoryConfigOp> CreateToMemoryConfigOp(
475  ::flatbuffers::FlatBufferBuilder &_fbb,
476  ::flatbuffers::Offset<tt::target::TensorRef> in0 = 0,
477  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
478  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
479  ToMemoryConfigOpBuilder builder_(_fbb);
480  builder_.add_out(out);
481  builder_.add_device(device);
482  builder_.add_in0(in0);
483  return builder_.Finish();
484 }
485 
488  static auto constexpr Create = CreateToMemoryConfigOp;
489 };
490 
491 struct ToLayoutOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
493  struct Traits;
494  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
495  VT_IN = 4,
497  VT_DEVICE = 8,
498  VT_OUT = 10
499  };
500  const tt::target::TensorRef *in() const {
501  return GetPointer<const tt::target::TensorRef *>(VT_IN);
502  }
504  return static_cast<tt::target::TensorLayout>(GetField<uint16_t>(VT_LAYOUT, 0));
505  }
506  const tt::target::DeviceRef *device() const {
507  return GetPointer<const tt::target::DeviceRef *>(VT_DEVICE);
508  }
509  const tt::target::TensorRef *out() const {
510  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
511  }
512  bool Verify(::flatbuffers::Verifier &verifier) const {
513  return VerifyTableStart(verifier) &&
514  VerifyOffset(verifier, VT_IN) &&
515  verifier.VerifyTable(in()) &&
516  VerifyField<uint16_t>(verifier, VT_LAYOUT, 2) &&
517  VerifyOffset(verifier, VT_DEVICE) &&
518  verifier.VerifyTable(device()) &&
519  VerifyOffset(verifier, VT_OUT) &&
520  verifier.VerifyTable(out()) &&
521  verifier.EndTable();
522  }
523 };
524 
526  typedef ToLayoutOp Table;
527  ::flatbuffers::FlatBufferBuilder &fbb_;
528  ::flatbuffers::uoffset_t start_;
529  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
530  fbb_.AddOffset(ToLayoutOp::VT_IN, in);
531  }
533  fbb_.AddElement<uint16_t>(ToLayoutOp::VT_LAYOUT, static_cast<uint16_t>(layout), 0);
534  }
535  void add_device(::flatbuffers::Offset<tt::target::DeviceRef> device) {
536  fbb_.AddOffset(ToLayoutOp::VT_DEVICE, device);
537  }
538  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
539  fbb_.AddOffset(ToLayoutOp::VT_OUT, out);
540  }
541  explicit ToLayoutOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
542  : fbb_(_fbb) {
543  start_ = fbb_.StartTable();
544  }
545  ::flatbuffers::Offset<ToLayoutOp> Finish() {
546  const auto end = fbb_.EndTable(start_);
547  auto o = ::flatbuffers::Offset<ToLayoutOp>(end);
548  return o;
549  }
550 };
551 
552 inline ::flatbuffers::Offset<ToLayoutOp> CreateToLayoutOp(
553  ::flatbuffers::FlatBufferBuilder &_fbb,
554  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
556  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
557  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
558  ToLayoutOpBuilder builder_(_fbb);
559  builder_.add_out(out);
560  builder_.add_device(device);
561  builder_.add_in(in);
562  builder_.add_layout(layout);
563  return builder_.Finish();
564 }
565 
567  using type = ToLayoutOp;
568  static auto constexpr Create = CreateToLayoutOp;
569 };
570 
571 struct ToDeviceOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
573  struct Traits;
574  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
575  VT_IN = 4,
576  VT_DEVICE = 6,
578  VT_OUT = 10
579  };
580  const tt::target::TensorRef *in() const {
581  return GetPointer<const tt::target::TensorRef *>(VT_IN);
582  }
583  const tt::target::DeviceRef *device() const {
584  return GetPointer<const tt::target::DeviceRef *>(VT_DEVICE);
585  }
586  const tt::target::MemoryConfigDesc *memcfg() const {
587  return GetPointer<const tt::target::MemoryConfigDesc *>(VT_MEMCFG);
588  }
589  const tt::target::TensorRef *out() const {
590  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
591  }
592  bool Verify(::flatbuffers::Verifier &verifier) const {
593  return VerifyTableStart(verifier) &&
594  VerifyOffset(verifier, VT_IN) &&
595  verifier.VerifyTable(in()) &&
596  VerifyOffset(verifier, VT_DEVICE) &&
597  verifier.VerifyTable(device()) &&
598  VerifyOffset(verifier, VT_MEMCFG) &&
599  verifier.VerifyTable(memcfg()) &&
600  VerifyOffset(verifier, VT_OUT) &&
601  verifier.VerifyTable(out()) &&
602  verifier.EndTable();
603  }
604 };
605 
607  typedef ToDeviceOp Table;
608  ::flatbuffers::FlatBufferBuilder &fbb_;
609  ::flatbuffers::uoffset_t start_;
610  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
611  fbb_.AddOffset(ToDeviceOp::VT_IN, in);
612  }
613  void add_device(::flatbuffers::Offset<tt::target::DeviceRef> device) {
614  fbb_.AddOffset(ToDeviceOp::VT_DEVICE, device);
615  }
616  void add_memcfg(::flatbuffers::Offset<tt::target::MemoryConfigDesc> memcfg) {
617  fbb_.AddOffset(ToDeviceOp::VT_MEMCFG, memcfg);
618  }
619  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
620  fbb_.AddOffset(ToDeviceOp::VT_OUT, out);
621  }
622  explicit ToDeviceOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
623  : fbb_(_fbb) {
624  start_ = fbb_.StartTable();
625  }
626  ::flatbuffers::Offset<ToDeviceOp> Finish() {
627  const auto end = fbb_.EndTable(start_);
628  auto o = ::flatbuffers::Offset<ToDeviceOp>(end);
629  return o;
630  }
631 };
632 
633 inline ::flatbuffers::Offset<ToDeviceOp> CreateToDeviceOp(
634  ::flatbuffers::FlatBufferBuilder &_fbb,
635  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
636  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
637  ::flatbuffers::Offset<tt::target::MemoryConfigDesc> memcfg = 0,
638  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
639  ToDeviceOpBuilder builder_(_fbb);
640  builder_.add_out(out);
641  builder_.add_memcfg(memcfg);
642  builder_.add_device(device);
643  builder_.add_in(in);
644  return builder_.Finish();
645 }
646 
648  using type = ToDeviceOp;
649  static auto constexpr Create = CreateToDeviceOp;
650 };
651 
652 struct FromDeviceOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
654  struct Traits;
655  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
656  VT_IN = 4,
657  VT_OUT = 6
658  };
659  const tt::target::TensorRef *in() const {
660  return GetPointer<const tt::target::TensorRef *>(VT_IN);
661  }
662  const tt::target::TensorRef *out() const {
663  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
664  }
665  bool Verify(::flatbuffers::Verifier &verifier) const {
666  return VerifyTableStart(verifier) &&
667  VerifyOffset(verifier, VT_IN) &&
668  verifier.VerifyTable(in()) &&
669  VerifyOffset(verifier, VT_OUT) &&
670  verifier.VerifyTable(out()) &&
671  verifier.EndTable();
672  }
673 };
674 
677  ::flatbuffers::FlatBufferBuilder &fbb_;
678  ::flatbuffers::uoffset_t start_;
679  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
680  fbb_.AddOffset(FromDeviceOp::VT_IN, in);
681  }
682  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
683  fbb_.AddOffset(FromDeviceOp::VT_OUT, out);
684  }
685  explicit FromDeviceOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
686  : fbb_(_fbb) {
687  start_ = fbb_.StartTable();
688  }
689  ::flatbuffers::Offset<FromDeviceOp> Finish() {
690  const auto end = fbb_.EndTable(start_);
691  auto o = ::flatbuffers::Offset<FromDeviceOp>(end);
692  return o;
693  }
694 };
695 
696 inline ::flatbuffers::Offset<FromDeviceOp> CreateFromDeviceOp(
697  ::flatbuffers::FlatBufferBuilder &_fbb,
698  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
699  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
700  FromDeviceOpBuilder builder_(_fbb);
701  builder_.add_out(out);
702  builder_.add_in(in);
703  return builder_.Finish();
704 }
705 
708  static auto constexpr Create = CreateFromDeviceOp;
709 };
710 
711 struct EmptyOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
713  struct Traits;
714  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
715  VT_SHAPE = 4,
716  VT_DTYPE = 6,
717  VT_LAYOUT = 8,
718  VT_DEVICE = 10,
719  VT_MEMCFG = 12,
720  VT_OUT = 14
721  };
722  const ::flatbuffers::Vector<int64_t> *shape() const {
723  return GetPointer<const ::flatbuffers::Vector<int64_t> *>(VT_SHAPE);
724  }
726  return static_cast<tt::target::DataType>(GetField<uint16_t>(VT_DTYPE, 0));
727  }
729  return static_cast<tt::target::TensorLayout>(GetField<uint16_t>(VT_LAYOUT, 0));
730  }
731  const tt::target::DeviceRef *device() const {
732  return GetPointer<const tt::target::DeviceRef *>(VT_DEVICE);
733  }
734  const tt::target::MemoryConfigDesc *memcfg() const {
735  return GetPointer<const tt::target::MemoryConfigDesc *>(VT_MEMCFG);
736  }
737  const tt::target::TensorRef *out() const {
738  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
739  }
740  bool Verify(::flatbuffers::Verifier &verifier) const {
741  return VerifyTableStart(verifier) &&
742  VerifyOffset(verifier, VT_SHAPE) &&
743  verifier.VerifyVector(shape()) &&
744  VerifyField<uint16_t>(verifier, VT_DTYPE, 2) &&
745  VerifyField<uint16_t>(verifier, VT_LAYOUT, 2) &&
746  VerifyOffset(verifier, VT_DEVICE) &&
747  verifier.VerifyTable(device()) &&
748  VerifyOffset(verifier, VT_MEMCFG) &&
749  verifier.VerifyTable(memcfg()) &&
750  VerifyOffset(verifier, VT_OUT) &&
751  verifier.VerifyTable(out()) &&
752  verifier.EndTable();
753  }
754 };
755 
757  typedef EmptyOp Table;
758  ::flatbuffers::FlatBufferBuilder &fbb_;
759  ::flatbuffers::uoffset_t start_;
760  void add_shape(::flatbuffers::Offset<::flatbuffers::Vector<int64_t>> shape) {
761  fbb_.AddOffset(EmptyOp::VT_SHAPE, shape);
762  }
764  fbb_.AddElement<uint16_t>(EmptyOp::VT_DTYPE, static_cast<uint16_t>(dtype), 0);
765  }
767  fbb_.AddElement<uint16_t>(EmptyOp::VT_LAYOUT, static_cast<uint16_t>(layout), 0);
768  }
769  void add_device(::flatbuffers::Offset<tt::target::DeviceRef> device) {
770  fbb_.AddOffset(EmptyOp::VT_DEVICE, device);
771  }
772  void add_memcfg(::flatbuffers::Offset<tt::target::MemoryConfigDesc> memcfg) {
773  fbb_.AddOffset(EmptyOp::VT_MEMCFG, memcfg);
774  }
775  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
776  fbb_.AddOffset(EmptyOp::VT_OUT, out);
777  }
778  explicit EmptyOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
779  : fbb_(_fbb) {
780  start_ = fbb_.StartTable();
781  }
782  ::flatbuffers::Offset<EmptyOp> Finish() {
783  const auto end = fbb_.EndTable(start_);
784  auto o = ::flatbuffers::Offset<EmptyOp>(end);
785  return o;
786  }
787 };
788 
789 inline ::flatbuffers::Offset<EmptyOp> CreateEmptyOp(
790  ::flatbuffers::FlatBufferBuilder &_fbb,
791  ::flatbuffers::Offset<::flatbuffers::Vector<int64_t>> shape = 0,
794  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
795  ::flatbuffers::Offset<tt::target::MemoryConfigDesc> memcfg = 0,
796  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
797  EmptyOpBuilder builder_(_fbb);
798  builder_.add_out(out);
799  builder_.add_memcfg(memcfg);
800  builder_.add_device(device);
801  builder_.add_shape(shape);
802  builder_.add_layout(layout);
803  builder_.add_dtype(dtype);
804  return builder_.Finish();
805 }
806 
808  using type = EmptyOp;
809  static auto constexpr Create = CreateEmptyOp;
810 };
811 
812 inline ::flatbuffers::Offset<EmptyOp> CreateEmptyOpDirect(
813  ::flatbuffers::FlatBufferBuilder &_fbb,
814  const std::vector<int64_t> *shape = nullptr,
817  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
818  ::flatbuffers::Offset<tt::target::MemoryConfigDesc> memcfg = 0,
819  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
820  auto shape__ = shape ? _fbb.CreateVector<int64_t>(*shape) : 0;
822  _fbb,
823  shape__,
824  dtype,
825  layout,
826  device,
827  memcfg,
828  out);
829 }
830 
831 struct FullOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
833  struct Traits;
834  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
835  VT_DEVICE = 4,
837  VT_OUT = 8
838  };
839  const tt::target::DeviceRef *device() const {
840  return GetPointer<const tt::target::DeviceRef *>(VT_DEVICE);
841  }
842  float fill_value() const {
843  return GetField<float>(VT_FILL_VALUE, 0.0f);
844  }
845  const tt::target::TensorRef *out() const {
846  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
847  }
848  bool Verify(::flatbuffers::Verifier &verifier) const {
849  return VerifyTableStart(verifier) &&
850  VerifyOffset(verifier, VT_DEVICE) &&
851  verifier.VerifyTable(device()) &&
852  VerifyField<float>(verifier, VT_FILL_VALUE, 4) &&
853  VerifyOffset(verifier, VT_OUT) &&
854  verifier.VerifyTable(out()) &&
855  verifier.EndTable();
856  }
857 };
858 
860  typedef FullOp Table;
861  ::flatbuffers::FlatBufferBuilder &fbb_;
862  ::flatbuffers::uoffset_t start_;
863  void add_device(::flatbuffers::Offset<tt::target::DeviceRef> device) {
864  fbb_.AddOffset(FullOp::VT_DEVICE, device);
865  }
866  void add_fill_value(float fill_value) {
867  fbb_.AddElement<float>(FullOp::VT_FILL_VALUE, fill_value, 0.0f);
868  }
869  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
870  fbb_.AddOffset(FullOp::VT_OUT, out);
871  }
872  explicit FullOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
873  : fbb_(_fbb) {
874  start_ = fbb_.StartTable();
875  }
876  ::flatbuffers::Offset<FullOp> Finish() {
877  const auto end = fbb_.EndTable(start_);
878  auto o = ::flatbuffers::Offset<FullOp>(end);
879  return o;
880  }
881 };
882 
883 inline ::flatbuffers::Offset<FullOp> CreateFullOp(
884  ::flatbuffers::FlatBufferBuilder &_fbb,
885  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
886  float fill_value = 0.0f,
887  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
888  FullOpBuilder builder_(_fbb);
889  builder_.add_out(out);
890  builder_.add_fill_value(fill_value);
891  builder_.add_device(device);
892  return builder_.Finish();
893 }
894 
896  using type = FullOp;
897  static auto constexpr Create = CreateFullOp;
898 };
899 
900 struct EltwiseOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
902  struct Traits;
903  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
904  VT_TYPE = 4,
905  VT_INS = 6,
906  VT_OUT = 8
907  };
909  return static_cast<tt::target::ttnn::EltwiseOpType>(GetField<uint32_t>(VT_TYPE, 0));
910  }
911  const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *ins() const {
912  return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *>(VT_INS);
913  }
914  const tt::target::TensorRef *out() const {
915  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
916  }
917  bool Verify(::flatbuffers::Verifier &verifier) const {
918  return VerifyTableStart(verifier) &&
919  VerifyField<uint32_t>(verifier, VT_TYPE, 4) &&
920  VerifyOffset(verifier, VT_INS) &&
921  verifier.VerifyVector(ins()) &&
922  verifier.VerifyVectorOfTables(ins()) &&
923  VerifyOffset(verifier, VT_OUT) &&
924  verifier.VerifyTable(out()) &&
925  verifier.EndTable();
926  }
927 };
928 
930  typedef EltwiseOp Table;
931  ::flatbuffers::FlatBufferBuilder &fbb_;
932  ::flatbuffers::uoffset_t start_;
934  fbb_.AddElement<uint32_t>(EltwiseOp::VT_TYPE, static_cast<uint32_t>(type), 0);
935  }
936  void add_ins(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> ins) {
937  fbb_.AddOffset(EltwiseOp::VT_INS, ins);
938  }
939  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
940  fbb_.AddOffset(EltwiseOp::VT_OUT, out);
941  }
942  explicit EltwiseOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
943  : fbb_(_fbb) {
944  start_ = fbb_.StartTable();
945  }
946  ::flatbuffers::Offset<EltwiseOp> Finish() {
947  const auto end = fbb_.EndTable(start_);
948  auto o = ::flatbuffers::Offset<EltwiseOp>(end);
949  return o;
950  }
951 };
952 
953 inline ::flatbuffers::Offset<EltwiseOp> CreateEltwiseOp(
954  ::flatbuffers::FlatBufferBuilder &_fbb,
956  ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> ins = 0,
957  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
958  EltwiseOpBuilder builder_(_fbb);
959  builder_.add_out(out);
960  builder_.add_ins(ins);
961  builder_.add_type(type);
962  return builder_.Finish();
963 }
964 
966  using type = EltwiseOp;
967  static auto constexpr Create = CreateEltwiseOp;
968 };
969 
970 inline ::flatbuffers::Offset<EltwiseOp> CreateEltwiseOpDirect(
971  ::flatbuffers::FlatBufferBuilder &_fbb,
973  const std::vector<::flatbuffers::Offset<tt::target::TensorRef>> *ins = nullptr,
974  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
975  auto ins__ = ins ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::TensorRef>>(*ins) : 0;
977  _fbb,
978  type,
979  ins__,
980  out);
981 }
982 
983 struct ReductionOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
985  struct Traits;
986  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
987  VT_TYPE = 4,
988  VT_IN = 6,
989  VT_OUT = 8,
991  VT_KEEP_DIM = 12
992  };
994  return static_cast<tt::target::ttnn::ReductionOpType>(GetField<uint32_t>(VT_TYPE, 0));
995  }
996  const tt::target::TensorRef *in() const {
997  return GetPointer<const tt::target::TensorRef *>(VT_IN);
998  }
999  const tt::target::TensorRef *out() const {
1000  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1001  }
1002  const ::flatbuffers::Vector<int32_t> *dim_arg() const {
1003  return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_DIM_ARG);
1004  }
1005  bool keep_dim() const {
1006  return GetField<uint8_t>(VT_KEEP_DIM, 0) != 0;
1007  }
1008  bool Verify(::flatbuffers::Verifier &verifier) const {
1009  return VerifyTableStart(verifier) &&
1010  VerifyField<uint32_t>(verifier, VT_TYPE, 4) &&
1011  VerifyOffset(verifier, VT_IN) &&
1012  verifier.VerifyTable(in()) &&
1013  VerifyOffset(verifier, VT_OUT) &&
1014  verifier.VerifyTable(out()) &&
1015  VerifyOffset(verifier, VT_DIM_ARG) &&
1016  verifier.VerifyVector(dim_arg()) &&
1017  VerifyField<uint8_t>(verifier, VT_KEEP_DIM, 1) &&
1018  verifier.EndTable();
1019  }
1020 };
1021 
1024  ::flatbuffers::FlatBufferBuilder &fbb_;
1025  ::flatbuffers::uoffset_t start_;
1027  fbb_.AddElement<uint32_t>(ReductionOp::VT_TYPE, static_cast<uint32_t>(type), 0);
1028  }
1029  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
1030  fbb_.AddOffset(ReductionOp::VT_IN, in);
1031  }
1032  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1033  fbb_.AddOffset(ReductionOp::VT_OUT, out);
1034  }
1035  void add_dim_arg(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> dim_arg) {
1036  fbb_.AddOffset(ReductionOp::VT_DIM_ARG, dim_arg);
1037  }
1038  void add_keep_dim(bool keep_dim) {
1039  fbb_.AddElement<uint8_t>(ReductionOp::VT_KEEP_DIM, static_cast<uint8_t>(keep_dim), 0);
1040  }
1041  explicit ReductionOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1042  : fbb_(_fbb) {
1043  start_ = fbb_.StartTable();
1044  }
1045  ::flatbuffers::Offset<ReductionOp> Finish() {
1046  const auto end = fbb_.EndTable(start_);
1047  auto o = ::flatbuffers::Offset<ReductionOp>(end);
1048  return o;
1049  }
1050 };
1051 
1052 inline ::flatbuffers::Offset<ReductionOp> CreateReductionOp(
1053  ::flatbuffers::FlatBufferBuilder &_fbb,
1055  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
1056  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1057  ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> dim_arg = 0,
1058  bool keep_dim = false) {
1059  ReductionOpBuilder builder_(_fbb);
1060  builder_.add_dim_arg(dim_arg);
1061  builder_.add_out(out);
1062  builder_.add_in(in);
1063  builder_.add_type(type);
1064  builder_.add_keep_dim(keep_dim);
1065  return builder_.Finish();
1066 }
1067 
1070  static auto constexpr Create = CreateReductionOp;
1071 };
1072 
1073 inline ::flatbuffers::Offset<ReductionOp> CreateReductionOpDirect(
1074  ::flatbuffers::FlatBufferBuilder &_fbb,
1076  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
1077  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1078  const std::vector<int32_t> *dim_arg = nullptr,
1079  bool keep_dim = false) {
1080  auto dim_arg__ = dim_arg ? _fbb.CreateVector<int32_t>(*dim_arg) : 0;
1082  _fbb,
1083  type,
1084  in,
1085  out,
1086  dim_arg__,
1087  keep_dim);
1088 }
1089 
1090 struct EmbeddingOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1092  struct Traits;
1093  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1096  VT_OUTPUT = 8
1097  };
1098  const tt::target::TensorRef *input() const {
1099  return GetPointer<const tt::target::TensorRef *>(VT_INPUT);
1100  }
1101  const tt::target::TensorRef *weight() const {
1102  return GetPointer<const tt::target::TensorRef *>(VT_WEIGHT);
1103  }
1104  const tt::target::TensorRef *output() const {
1105  return GetPointer<const tt::target::TensorRef *>(VT_OUTPUT);
1106  }
1107  bool Verify(::flatbuffers::Verifier &verifier) const {
1108  return VerifyTableStart(verifier) &&
1109  VerifyOffset(verifier, VT_INPUT) &&
1110  verifier.VerifyTable(input()) &&
1111  VerifyOffset(verifier, VT_WEIGHT) &&
1112  verifier.VerifyTable(weight()) &&
1113  VerifyOffset(verifier, VT_OUTPUT) &&
1114  verifier.VerifyTable(output()) &&
1115  verifier.EndTable();
1116  }
1117 };
1118 
1121  ::flatbuffers::FlatBufferBuilder &fbb_;
1122  ::flatbuffers::uoffset_t start_;
1123  void add_input(::flatbuffers::Offset<tt::target::TensorRef> input) {
1124  fbb_.AddOffset(EmbeddingOp::VT_INPUT, input);
1125  }
1126  void add_weight(::flatbuffers::Offset<tt::target::TensorRef> weight) {
1127  fbb_.AddOffset(EmbeddingOp::VT_WEIGHT, weight);
1128  }
1129  void add_output(::flatbuffers::Offset<tt::target::TensorRef> output) {
1130  fbb_.AddOffset(EmbeddingOp::VT_OUTPUT, output);
1131  }
1132  explicit EmbeddingOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1133  : fbb_(_fbb) {
1134  start_ = fbb_.StartTable();
1135  }
1136  ::flatbuffers::Offset<EmbeddingOp> Finish() {
1137  const auto end = fbb_.EndTable(start_);
1138  auto o = ::flatbuffers::Offset<EmbeddingOp>(end);
1139  return o;
1140  }
1141 };
1142 
1143 inline ::flatbuffers::Offset<EmbeddingOp> CreateEmbeddingOp(
1144  ::flatbuffers::FlatBufferBuilder &_fbb,
1145  ::flatbuffers::Offset<tt::target::TensorRef> input = 0,
1146  ::flatbuffers::Offset<tt::target::TensorRef> weight = 0,
1147  ::flatbuffers::Offset<tt::target::TensorRef> output = 0) {
1148  EmbeddingOpBuilder builder_(_fbb);
1149  builder_.add_output(output);
1150  builder_.add_weight(weight);
1151  builder_.add_input(input);
1152  return builder_.Finish();
1153 }
1154 
1157  static auto constexpr Create = CreateEmbeddingOp;
1158 };
1159 
1160 struct SoftmaxOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1162  struct Traits;
1163  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1164  VT_IN = 4,
1165  VT_OUT = 6,
1166  VT_DIMENSION = 8
1167  };
1168  const tt::target::TensorRef *in() const {
1169  return GetPointer<const tt::target::TensorRef *>(VT_IN);
1170  }
1171  const tt::target::TensorRef *out() const {
1172  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1173  }
1174  int32_t dimension() const {
1175  return GetField<int32_t>(VT_DIMENSION, 0);
1176  }
1177  bool Verify(::flatbuffers::Verifier &verifier) const {
1178  return VerifyTableStart(verifier) &&
1179  VerifyOffset(verifier, VT_IN) &&
1180  verifier.VerifyTable(in()) &&
1181  VerifyOffset(verifier, VT_OUT) &&
1182  verifier.VerifyTable(out()) &&
1183  VerifyField<int32_t>(verifier, VT_DIMENSION, 4) &&
1184  verifier.EndTable();
1185  }
1186 };
1187 
1189  typedef SoftmaxOp Table;
1190  ::flatbuffers::FlatBufferBuilder &fbb_;
1191  ::flatbuffers::uoffset_t start_;
1192  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
1193  fbb_.AddOffset(SoftmaxOp::VT_IN, in);
1194  }
1195  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1196  fbb_.AddOffset(SoftmaxOp::VT_OUT, out);
1197  }
1198  void add_dimension(int32_t dimension) {
1199  fbb_.AddElement<int32_t>(SoftmaxOp::VT_DIMENSION, dimension, 0);
1200  }
1201  explicit SoftmaxOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1202  : fbb_(_fbb) {
1203  start_ = fbb_.StartTable();
1204  }
1205  ::flatbuffers::Offset<SoftmaxOp> Finish() {
1206  const auto end = fbb_.EndTable(start_);
1207  auto o = ::flatbuffers::Offset<SoftmaxOp>(end);
1208  return o;
1209  }
1210 };
1211 
1212 inline ::flatbuffers::Offset<SoftmaxOp> CreateSoftmaxOp(
1213  ::flatbuffers::FlatBufferBuilder &_fbb,
1214  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
1215  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1216  int32_t dimension = 0) {
1217  SoftmaxOpBuilder builder_(_fbb);
1218  builder_.add_dimension(dimension);
1219  builder_.add_out(out);
1220  builder_.add_in(in);
1221  return builder_.Finish();
1222 }
1223 
1225  using type = SoftmaxOp;
1226  static auto constexpr Create = CreateSoftmaxOp;
1227 };
1228 
1229 struct TransposeOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1231  struct Traits;
1232  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1233  VT_IN = 4,
1234  VT_OUT = 6,
1235  VT_DIM0 = 8,
1236  VT_DIM1 = 10
1237  };
1238  const tt::target::TensorRef *in() const {
1239  return GetPointer<const tt::target::TensorRef *>(VT_IN);
1240  }
1241  const tt::target::TensorRef *out() const {
1242  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1243  }
1244  int32_t dim0() const {
1245  return GetField<int32_t>(VT_DIM0, 0);
1246  }
1247  int32_t dim1() const {
1248  return GetField<int32_t>(VT_DIM1, 0);
1249  }
1250  bool Verify(::flatbuffers::Verifier &verifier) const {
1251  return VerifyTableStart(verifier) &&
1252  VerifyOffset(verifier, VT_IN) &&
1253  verifier.VerifyTable(in()) &&
1254  VerifyOffset(verifier, VT_OUT) &&
1255  verifier.VerifyTable(out()) &&
1256  VerifyField<int32_t>(verifier, VT_DIM0, 4) &&
1257  VerifyField<int32_t>(verifier, VT_DIM1, 4) &&
1258  verifier.EndTable();
1259  }
1260 };
1261 
1264  ::flatbuffers::FlatBufferBuilder &fbb_;
1265  ::flatbuffers::uoffset_t start_;
1266  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
1267  fbb_.AddOffset(TransposeOp::VT_IN, in);
1268  }
1269  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1270  fbb_.AddOffset(TransposeOp::VT_OUT, out);
1271  }
1272  void add_dim0(int32_t dim0) {
1273  fbb_.AddElement<int32_t>(TransposeOp::VT_DIM0, dim0, 0);
1274  }
1275  void add_dim1(int32_t dim1) {
1276  fbb_.AddElement<int32_t>(TransposeOp::VT_DIM1, dim1, 0);
1277  }
1278  explicit TransposeOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1279  : fbb_(_fbb) {
1280  start_ = fbb_.StartTable();
1281  }
1282  ::flatbuffers::Offset<TransposeOp> Finish() {
1283  const auto end = fbb_.EndTable(start_);
1284  auto o = ::flatbuffers::Offset<TransposeOp>(end);
1285  return o;
1286  }
1287 };
1288 
1289 inline ::flatbuffers::Offset<TransposeOp> CreateTransposeOp(
1290  ::flatbuffers::FlatBufferBuilder &_fbb,
1291  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
1292  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1293  int32_t dim0 = 0,
1294  int32_t dim1 = 0) {
1295  TransposeOpBuilder builder_(_fbb);
1296  builder_.add_dim1(dim1);
1297  builder_.add_dim0(dim0);
1298  builder_.add_out(out);
1299  builder_.add_in(in);
1300  return builder_.Finish();
1301 }
1302 
1305  static auto constexpr Create = CreateTransposeOp;
1306 };
1307 
1308 struct ConcatOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1310  struct Traits;
1311  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1313  VT_OUT = 6,
1314  VT_DIM = 8
1315  };
1316  const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *inputs() const {
1317  return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *>(VT_INPUTS);
1318  }
1319  const tt::target::TensorRef *out() const {
1320  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1321  }
1322  int32_t dim() const {
1323  return GetField<int32_t>(VT_DIM, 0);
1324  }
1325  bool Verify(::flatbuffers::Verifier &verifier) const {
1326  return VerifyTableStart(verifier) &&
1327  VerifyOffset(verifier, VT_INPUTS) &&
1328  verifier.VerifyVector(inputs()) &&
1329  verifier.VerifyVectorOfTables(inputs()) &&
1330  VerifyOffset(verifier, VT_OUT) &&
1331  verifier.VerifyTable(out()) &&
1332  VerifyField<int32_t>(verifier, VT_DIM, 4) &&
1333  verifier.EndTable();
1334  }
1335 };
1336 
1338  typedef ConcatOp Table;
1339  ::flatbuffers::FlatBufferBuilder &fbb_;
1340  ::flatbuffers::uoffset_t start_;
1341  void add_inputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> inputs) {
1342  fbb_.AddOffset(ConcatOp::VT_INPUTS, inputs);
1343  }
1344  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1345  fbb_.AddOffset(ConcatOp::VT_OUT, out);
1346  }
1347  void add_dim(int32_t dim) {
1348  fbb_.AddElement<int32_t>(ConcatOp::VT_DIM, dim, 0);
1349  }
1350  explicit ConcatOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1351  : fbb_(_fbb) {
1352  start_ = fbb_.StartTable();
1353  }
1354  ::flatbuffers::Offset<ConcatOp> Finish() {
1355  const auto end = fbb_.EndTable(start_);
1356  auto o = ::flatbuffers::Offset<ConcatOp>(end);
1357  return o;
1358  }
1359 };
1360 
1361 inline ::flatbuffers::Offset<ConcatOp> CreateConcatOp(
1362  ::flatbuffers::FlatBufferBuilder &_fbb,
1363  ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> inputs = 0,
1364  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1365  int32_t dim = 0) {
1366  ConcatOpBuilder builder_(_fbb);
1367  builder_.add_dim(dim);
1368  builder_.add_out(out);
1369  builder_.add_inputs(inputs);
1370  return builder_.Finish();
1371 }
1372 
1374  using type = ConcatOp;
1375  static auto constexpr Create = CreateConcatOp;
1376 };
1377 
1378 inline ::flatbuffers::Offset<ConcatOp> CreateConcatOpDirect(
1379  ::flatbuffers::FlatBufferBuilder &_fbb,
1380  const std::vector<::flatbuffers::Offset<tt::target::TensorRef>> *inputs = nullptr,
1381  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1382  int32_t dim = 0) {
1383  auto inputs__ = inputs ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::TensorRef>>(*inputs) : 0;
1385  _fbb,
1386  inputs__,
1387  out,
1388  dim);
1389 }
1390 
1391 struct ReshapeOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1393  struct Traits;
1394  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1395  VT_IN = 4,
1396  VT_OUT = 6,
1397  VT_SHAPE = 8
1398  };
1399  const tt::target::TensorRef *in() const {
1400  return GetPointer<const tt::target::TensorRef *>(VT_IN);
1401  }
1402  const tt::target::TensorRef *out() const {
1403  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1404  }
1405  const ::flatbuffers::Vector<int32_t> *shape() const {
1406  return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_SHAPE);
1407  }
1408  bool Verify(::flatbuffers::Verifier &verifier) const {
1409  return VerifyTableStart(verifier) &&
1410  VerifyOffset(verifier, VT_IN) &&
1411  verifier.VerifyTable(in()) &&
1412  VerifyOffset(verifier, VT_OUT) &&
1413  verifier.VerifyTable(out()) &&
1414  VerifyOffset(verifier, VT_SHAPE) &&
1415  verifier.VerifyVector(shape()) &&
1416  verifier.EndTable();
1417  }
1418 };
1419 
1421  typedef ReshapeOp Table;
1422  ::flatbuffers::FlatBufferBuilder &fbb_;
1423  ::flatbuffers::uoffset_t start_;
1424  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
1425  fbb_.AddOffset(ReshapeOp::VT_IN, in);
1426  }
1427  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1428  fbb_.AddOffset(ReshapeOp::VT_OUT, out);
1429  }
1430  void add_shape(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape) {
1431  fbb_.AddOffset(ReshapeOp::VT_SHAPE, shape);
1432  }
1433  explicit ReshapeOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1434  : fbb_(_fbb) {
1435  start_ = fbb_.StartTable();
1436  }
1437  ::flatbuffers::Offset<ReshapeOp> Finish() {
1438  const auto end = fbb_.EndTable(start_);
1439  auto o = ::flatbuffers::Offset<ReshapeOp>(end);
1440  return o;
1441  }
1442 };
1443 
1444 inline ::flatbuffers::Offset<ReshapeOp> CreateReshapeOp(
1445  ::flatbuffers::FlatBufferBuilder &_fbb,
1446  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
1447  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1448  ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape = 0) {
1449  ReshapeOpBuilder builder_(_fbb);
1450  builder_.add_shape(shape);
1451  builder_.add_out(out);
1452  builder_.add_in(in);
1453  return builder_.Finish();
1454 }
1455 
1457  using type = ReshapeOp;
1458  static auto constexpr Create = CreateReshapeOp;
1459 };
1460 
1461 inline ::flatbuffers::Offset<ReshapeOp> CreateReshapeOpDirect(
1462  ::flatbuffers::FlatBufferBuilder &_fbb,
1463  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
1464  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1465  const std::vector<int32_t> *shape = nullptr) {
1466  auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
1468  _fbb,
1469  in,
1470  out,
1471  shape__);
1472 }
1473 
1474 struct MatmulOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1476  struct Traits;
1477  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1478  VT_IN0 = 4,
1479  VT_IN1 = 6,
1480  VT_OUT = 8
1481  };
1482  const tt::target::TensorRef *in0() const {
1483  return GetPointer<const tt::target::TensorRef *>(VT_IN0);
1484  }
1485  const tt::target::TensorRef *in1() const {
1486  return GetPointer<const tt::target::TensorRef *>(VT_IN1);
1487  }
1488  const tt::target::TensorRef *out() const {
1489  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1490  }
1491  bool Verify(::flatbuffers::Verifier &verifier) const {
1492  return VerifyTableStart(verifier) &&
1493  VerifyOffset(verifier, VT_IN0) &&
1494  verifier.VerifyTable(in0()) &&
1495  VerifyOffset(verifier, VT_IN1) &&
1496  verifier.VerifyTable(in1()) &&
1497  VerifyOffset(verifier, VT_OUT) &&
1498  verifier.VerifyTable(out()) &&
1499  verifier.EndTable();
1500  }
1501 };
1502 
1504  typedef MatmulOp Table;
1505  ::flatbuffers::FlatBufferBuilder &fbb_;
1506  ::flatbuffers::uoffset_t start_;
1507  void add_in0(::flatbuffers::Offset<tt::target::TensorRef> in0) {
1508  fbb_.AddOffset(MatmulOp::VT_IN0, in0);
1509  }
1510  void add_in1(::flatbuffers::Offset<tt::target::TensorRef> in1) {
1511  fbb_.AddOffset(MatmulOp::VT_IN1, in1);
1512  }
1513  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1514  fbb_.AddOffset(MatmulOp::VT_OUT, out);
1515  }
1516  explicit MatmulOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1517  : fbb_(_fbb) {
1518  start_ = fbb_.StartTable();
1519  }
1520  ::flatbuffers::Offset<MatmulOp> Finish() {
1521  const auto end = fbb_.EndTable(start_);
1522  auto o = ::flatbuffers::Offset<MatmulOp>(end);
1523  return o;
1524  }
1525 };
1526 
1527 inline ::flatbuffers::Offset<MatmulOp> CreateMatmulOp(
1528  ::flatbuffers::FlatBufferBuilder &_fbb,
1529  ::flatbuffers::Offset<tt::target::TensorRef> in0 = 0,
1530  ::flatbuffers::Offset<tt::target::TensorRef> in1 = 0,
1531  ::flatbuffers::Offset<tt::target::TensorRef> out = 0) {
1532  MatmulOpBuilder builder_(_fbb);
1533  builder_.add_out(out);
1534  builder_.add_in1(in1);
1535  builder_.add_in0(in0);
1536  return builder_.Finish();
1537 }
1538 
1540  using type = MatmulOp;
1541  static auto constexpr Create = CreateMatmulOp;
1542 };
1543 
1544 struct Conv2dOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1546  struct Traits;
1547  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1548  VT_INPUT = 4,
1549  VT_WEIGHT = 6,
1550  VT_BIAS = 8,
1551  VT_OUT = 10,
1552  VT_DEVICE = 12,
1566  VT_GROUPS = 40
1567  };
1568  const tt::target::TensorRef *input() const {
1569  return GetPointer<const tt::target::TensorRef *>(VT_INPUT);
1570  }
1571  const tt::target::TensorRef *weight() const {
1572  return GetPointer<const tt::target::TensorRef *>(VT_WEIGHT);
1573  }
1574  const tt::target::TensorRef *bias() const {
1575  return GetPointer<const tt::target::TensorRef *>(VT_BIAS);
1576  }
1577  const tt::target::TensorRef *out() const {
1578  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1579  }
1580  const tt::target::DeviceRef *device() const {
1581  return GetPointer<const tt::target::DeviceRef *>(VT_DEVICE);
1582  }
1583  uint32_t in_channels() const {
1584  return GetField<uint32_t>(VT_IN_CHANNELS, 0);
1585  }
1586  uint32_t out_channels() const {
1587  return GetField<uint32_t>(VT_OUT_CHANNELS, 0);
1588  }
1589  uint32_t batch_size() const {
1590  return GetField<uint32_t>(VT_BATCH_SIZE, 0);
1591  }
1592  uint32_t input_height() const {
1593  return GetField<uint32_t>(VT_INPUT_HEIGHT, 0);
1594  }
1595  uint32_t input_width() const {
1596  return GetField<uint32_t>(VT_INPUT_WIDTH, 0);
1597  }
1598  uint32_t kernel_height() const {
1599  return GetField<uint32_t>(VT_KERNEL_HEIGHT, 0);
1600  }
1601  uint32_t kernel_width() const {
1602  return GetField<uint32_t>(VT_KERNEL_WIDTH, 0);
1603  }
1604  uint32_t stride_height() const {
1605  return GetField<uint32_t>(VT_STRIDE_HEIGHT, 0);
1606  }
1607  uint32_t stride_width() const {
1608  return GetField<uint32_t>(VT_STRIDE_WIDTH, 0);
1609  }
1610  uint32_t padding_height() const {
1611  return GetField<uint32_t>(VT_PADDING_HEIGHT, 0);
1612  }
1613  uint32_t padding_width() const {
1614  return GetField<uint32_t>(VT_PADDING_WIDTH, 0);
1615  }
1616  uint32_t dilation_height() const {
1617  return GetField<uint32_t>(VT_DILATION_HEIGHT, 0);
1618  }
1619  uint32_t dilation_width() const {
1620  return GetField<uint32_t>(VT_DILATION_WIDTH, 0);
1621  }
1622  uint32_t groups() const {
1623  return GetField<uint32_t>(VT_GROUPS, 0);
1624  }
1625  bool Verify(::flatbuffers::Verifier &verifier) const {
1626  return VerifyTableStart(verifier) &&
1627  VerifyOffset(verifier, VT_INPUT) &&
1628  verifier.VerifyTable(input()) &&
1629  VerifyOffset(verifier, VT_WEIGHT) &&
1630  verifier.VerifyTable(weight()) &&
1631  VerifyOffset(verifier, VT_BIAS) &&
1632  verifier.VerifyTable(bias()) &&
1633  VerifyOffset(verifier, VT_OUT) &&
1634  verifier.VerifyTable(out()) &&
1635  VerifyOffset(verifier, VT_DEVICE) &&
1636  verifier.VerifyTable(device()) &&
1637  VerifyField<uint32_t>(verifier, VT_IN_CHANNELS, 4) &&
1638  VerifyField<uint32_t>(verifier, VT_OUT_CHANNELS, 4) &&
1639  VerifyField<uint32_t>(verifier, VT_BATCH_SIZE, 4) &&
1640  VerifyField<uint32_t>(verifier, VT_INPUT_HEIGHT, 4) &&
1641  VerifyField<uint32_t>(verifier, VT_INPUT_WIDTH, 4) &&
1642  VerifyField<uint32_t>(verifier, VT_KERNEL_HEIGHT, 4) &&
1643  VerifyField<uint32_t>(verifier, VT_KERNEL_WIDTH, 4) &&
1644  VerifyField<uint32_t>(verifier, VT_STRIDE_HEIGHT, 4) &&
1645  VerifyField<uint32_t>(verifier, VT_STRIDE_WIDTH, 4) &&
1646  VerifyField<uint32_t>(verifier, VT_PADDING_HEIGHT, 4) &&
1647  VerifyField<uint32_t>(verifier, VT_PADDING_WIDTH, 4) &&
1648  VerifyField<uint32_t>(verifier, VT_DILATION_HEIGHT, 4) &&
1649  VerifyField<uint32_t>(verifier, VT_DILATION_WIDTH, 4) &&
1650  VerifyField<uint32_t>(verifier, VT_GROUPS, 4) &&
1651  verifier.EndTable();
1652  }
1653 };
1654 
1656  typedef Conv2dOp Table;
1657  ::flatbuffers::FlatBufferBuilder &fbb_;
1658  ::flatbuffers::uoffset_t start_;
1659  void add_input(::flatbuffers::Offset<tt::target::TensorRef> input) {
1660  fbb_.AddOffset(Conv2dOp::VT_INPUT, input);
1661  }
1662  void add_weight(::flatbuffers::Offset<tt::target::TensorRef> weight) {
1663  fbb_.AddOffset(Conv2dOp::VT_WEIGHT, weight);
1664  }
1665  void add_bias(::flatbuffers::Offset<tt::target::TensorRef> bias) {
1666  fbb_.AddOffset(Conv2dOp::VT_BIAS, bias);
1667  }
1668  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1669  fbb_.AddOffset(Conv2dOp::VT_OUT, out);
1670  }
1671  void add_device(::flatbuffers::Offset<tt::target::DeviceRef> device) {
1672  fbb_.AddOffset(Conv2dOp::VT_DEVICE, device);
1673  }
1674  void add_in_channels(uint32_t in_channels) {
1675  fbb_.AddElement<uint32_t>(Conv2dOp::VT_IN_CHANNELS, in_channels, 0);
1676  }
1677  void add_out_channels(uint32_t out_channels) {
1678  fbb_.AddElement<uint32_t>(Conv2dOp::VT_OUT_CHANNELS, out_channels, 0);
1679  }
1680  void add_batch_size(uint32_t batch_size) {
1681  fbb_.AddElement<uint32_t>(Conv2dOp::VT_BATCH_SIZE, batch_size, 0);
1682  }
1683  void add_input_height(uint32_t input_height) {
1684  fbb_.AddElement<uint32_t>(Conv2dOp::VT_INPUT_HEIGHT, input_height, 0);
1685  }
1686  void add_input_width(uint32_t input_width) {
1687  fbb_.AddElement<uint32_t>(Conv2dOp::VT_INPUT_WIDTH, input_width, 0);
1688  }
1689  void add_kernel_height(uint32_t kernel_height) {
1690  fbb_.AddElement<uint32_t>(Conv2dOp::VT_KERNEL_HEIGHT, kernel_height, 0);
1691  }
1692  void add_kernel_width(uint32_t kernel_width) {
1693  fbb_.AddElement<uint32_t>(Conv2dOp::VT_KERNEL_WIDTH, kernel_width, 0);
1694  }
1695  void add_stride_height(uint32_t stride_height) {
1696  fbb_.AddElement<uint32_t>(Conv2dOp::VT_STRIDE_HEIGHT, stride_height, 0);
1697  }
1698  void add_stride_width(uint32_t stride_width) {
1699  fbb_.AddElement<uint32_t>(Conv2dOp::VT_STRIDE_WIDTH, stride_width, 0);
1700  }
1701  void add_padding_height(uint32_t padding_height) {
1702  fbb_.AddElement<uint32_t>(Conv2dOp::VT_PADDING_HEIGHT, padding_height, 0);
1703  }
1704  void add_padding_width(uint32_t padding_width) {
1705  fbb_.AddElement<uint32_t>(Conv2dOp::VT_PADDING_WIDTH, padding_width, 0);
1706  }
1707  void add_dilation_height(uint32_t dilation_height) {
1708  fbb_.AddElement<uint32_t>(Conv2dOp::VT_DILATION_HEIGHT, dilation_height, 0);
1709  }
1710  void add_dilation_width(uint32_t dilation_width) {
1711  fbb_.AddElement<uint32_t>(Conv2dOp::VT_DILATION_WIDTH, dilation_width, 0);
1712  }
1713  void add_groups(uint32_t groups) {
1714  fbb_.AddElement<uint32_t>(Conv2dOp::VT_GROUPS, groups, 0);
1715  }
1716  explicit Conv2dOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1717  : fbb_(_fbb) {
1718  start_ = fbb_.StartTable();
1719  }
1720  ::flatbuffers::Offset<Conv2dOp> Finish() {
1721  const auto end = fbb_.EndTable(start_);
1722  auto o = ::flatbuffers::Offset<Conv2dOp>(end);
1723  return o;
1724  }
1725 };
1726 
1727 inline ::flatbuffers::Offset<Conv2dOp> CreateConv2dOp(
1728  ::flatbuffers::FlatBufferBuilder &_fbb,
1729  ::flatbuffers::Offset<tt::target::TensorRef> input = 0,
1730  ::flatbuffers::Offset<tt::target::TensorRef> weight = 0,
1731  ::flatbuffers::Offset<tt::target::TensorRef> bias = 0,
1732  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1733  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
1734  uint32_t in_channels = 0,
1735  uint32_t out_channels = 0,
1736  uint32_t batch_size = 0,
1737  uint32_t input_height = 0,
1738  uint32_t input_width = 0,
1739  uint32_t kernel_height = 0,
1740  uint32_t kernel_width = 0,
1741  uint32_t stride_height = 0,
1742  uint32_t stride_width = 0,
1743  uint32_t padding_height = 0,
1744  uint32_t padding_width = 0,
1745  uint32_t dilation_height = 0,
1746  uint32_t dilation_width = 0,
1747  uint32_t groups = 0) {
1748  Conv2dOpBuilder builder_(_fbb);
1749  builder_.add_groups(groups);
1750  builder_.add_dilation_width(dilation_width);
1751  builder_.add_dilation_height(dilation_height);
1752  builder_.add_padding_width(padding_width);
1753  builder_.add_padding_height(padding_height);
1754  builder_.add_stride_width(stride_width);
1755  builder_.add_stride_height(stride_height);
1756  builder_.add_kernel_width(kernel_width);
1757  builder_.add_kernel_height(kernel_height);
1758  builder_.add_input_width(input_width);
1759  builder_.add_input_height(input_height);
1760  builder_.add_batch_size(batch_size);
1761  builder_.add_out_channels(out_channels);
1762  builder_.add_in_channels(in_channels);
1763  builder_.add_device(device);
1764  builder_.add_out(out);
1765  builder_.add_bias(bias);
1766  builder_.add_weight(weight);
1767  builder_.add_input(input);
1768  return builder_.Finish();
1769 }
1770 
1772  using type = Conv2dOp;
1773  static auto constexpr Create = CreateConv2dOp;
1774 };
1775 
1776 struct MaxPool2dOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1778  struct Traits;
1779  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1780  VT_IN = 4,
1781  VT_OUT = 6,
1782  VT_DEVICE = 8,
1783  VT_BATCH_SIZE = 10,
1784  VT_INPUT_HEIGHT = 12,
1785  VT_INPUT_WIDTH = 14,
1787  VT_KERNEL_HEIGHT = 18,
1788  VT_KERNEL_WIDTH = 20,
1789  VT_STRIDE_HEIGHT = 22,
1790  VT_STRIDE_WIDTH = 24,
1791  VT_DILATION_HEIGHT = 26,
1792  VT_DILATION_WIDTH = 28,
1794  VT_PADDING_HEIGHT = 32,
1795  VT_PADDING_WIDTH = 34
1796  };
1797  const tt::target::TensorRef *in() const {
1798  return GetPointer<const tt::target::TensorRef *>(VT_IN);
1799  }
1800  const tt::target::TensorRef *out() const {
1801  return GetPointer<const tt::target::TensorRef *>(VT_OUT);
1802  }
1803  const tt::target::DeviceRef *device() const {
1804  return GetPointer<const tt::target::DeviceRef *>(VT_DEVICE);
1805  }
1806  uint32_t batch_size() const {
1807  return GetField<uint32_t>(VT_BATCH_SIZE, 0);
1808  }
1809  uint32_t input_height() const {
1810  return GetField<uint32_t>(VT_INPUT_HEIGHT, 0);
1811  }
1812  uint32_t input_width() const {
1813  return GetField<uint32_t>(VT_INPUT_WIDTH, 0);
1814  }
1815  uint32_t channels() const {
1816  return GetField<uint32_t>(VT_CHANNELS, 0);
1817  }
1818  uint32_t kernel_height() const {
1819  return GetField<uint32_t>(VT_KERNEL_HEIGHT, 0);
1820  }
1821  uint32_t kernel_width() const {
1822  return GetField<uint32_t>(VT_KERNEL_WIDTH, 0);
1823  }
1824  uint32_t stride_height() const {
1825  return GetField<uint32_t>(VT_STRIDE_HEIGHT, 0);
1826  }
1827  uint32_t stride_width() const {
1828  return GetField<uint32_t>(VT_STRIDE_WIDTH, 0);
1829  }
1830  uint32_t dilation_height() const {
1831  return GetField<uint32_t>(VT_DILATION_HEIGHT, 0);
1832  }
1833  uint32_t dilation_width() const {
1834  return GetField<uint32_t>(VT_DILATION_WIDTH, 0);
1835  }
1836  bool ceil_mode() const {
1837  return GetField<uint8_t>(VT_CEIL_MODE, 0) != 0;
1838  }
1839  uint32_t padding_height() const {
1840  return GetField<uint32_t>(VT_PADDING_HEIGHT, 0);
1841  }
1842  uint32_t padding_width() const {
1843  return GetField<uint32_t>(VT_PADDING_WIDTH, 0);
1844  }
1845  bool Verify(::flatbuffers::Verifier &verifier) const {
1846  return VerifyTableStart(verifier) &&
1847  VerifyOffset(verifier, VT_IN) &&
1848  verifier.VerifyTable(in()) &&
1849  VerifyOffset(verifier, VT_OUT) &&
1850  verifier.VerifyTable(out()) &&
1851  VerifyOffset(verifier, VT_DEVICE) &&
1852  verifier.VerifyTable(device()) &&
1853  VerifyField<uint32_t>(verifier, VT_BATCH_SIZE, 4) &&
1854  VerifyField<uint32_t>(verifier, VT_INPUT_HEIGHT, 4) &&
1855  VerifyField<uint32_t>(verifier, VT_INPUT_WIDTH, 4) &&
1856  VerifyField<uint32_t>(verifier, VT_CHANNELS, 4) &&
1857  VerifyField<uint32_t>(verifier, VT_KERNEL_HEIGHT, 4) &&
1858  VerifyField<uint32_t>(verifier, VT_KERNEL_WIDTH, 4) &&
1859  VerifyField<uint32_t>(verifier, VT_STRIDE_HEIGHT, 4) &&
1860  VerifyField<uint32_t>(verifier, VT_STRIDE_WIDTH, 4) &&
1861  VerifyField<uint32_t>(verifier, VT_DILATION_HEIGHT, 4) &&
1862  VerifyField<uint32_t>(verifier, VT_DILATION_WIDTH, 4) &&
1863  VerifyField<uint8_t>(verifier, VT_CEIL_MODE, 1) &&
1864  VerifyField<uint32_t>(verifier, VT_PADDING_HEIGHT, 4) &&
1865  VerifyField<uint32_t>(verifier, VT_PADDING_WIDTH, 4) &&
1866  verifier.EndTable();
1867  }
1868 };
1869 
1872  ::flatbuffers::FlatBufferBuilder &fbb_;
1873  ::flatbuffers::uoffset_t start_;
1874  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
1875  fbb_.AddOffset(MaxPool2dOp::VT_IN, in);
1876  }
1877  void add_out(::flatbuffers::Offset<tt::target::TensorRef> out) {
1878  fbb_.AddOffset(MaxPool2dOp::VT_OUT, out);
1879  }
1880  void add_device(::flatbuffers::Offset<tt::target::DeviceRef> device) {
1881  fbb_.AddOffset(MaxPool2dOp::VT_DEVICE, device);
1882  }
1883  void add_batch_size(uint32_t batch_size) {
1884  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_BATCH_SIZE, batch_size, 0);
1885  }
1886  void add_input_height(uint32_t input_height) {
1887  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_INPUT_HEIGHT, input_height, 0);
1888  }
1889  void add_input_width(uint32_t input_width) {
1890  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_INPUT_WIDTH, input_width, 0);
1891  }
1892  void add_channels(uint32_t channels) {
1893  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_CHANNELS, channels, 0);
1894  }
1895  void add_kernel_height(uint32_t kernel_height) {
1896  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_KERNEL_HEIGHT, kernel_height, 0);
1897  }
1898  void add_kernel_width(uint32_t kernel_width) {
1899  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_KERNEL_WIDTH, kernel_width, 0);
1900  }
1901  void add_stride_height(uint32_t stride_height) {
1902  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_STRIDE_HEIGHT, stride_height, 0);
1903  }
1904  void add_stride_width(uint32_t stride_width) {
1905  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_STRIDE_WIDTH, stride_width, 0);
1906  }
1907  void add_dilation_height(uint32_t dilation_height) {
1908  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_DILATION_HEIGHT, dilation_height, 0);
1909  }
1910  void add_dilation_width(uint32_t dilation_width) {
1911  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_DILATION_WIDTH, dilation_width, 0);
1912  }
1913  void add_ceil_mode(bool ceil_mode) {
1914  fbb_.AddElement<uint8_t>(MaxPool2dOp::VT_CEIL_MODE, static_cast<uint8_t>(ceil_mode), 0);
1915  }
1916  void add_padding_height(uint32_t padding_height) {
1917  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_PADDING_HEIGHT, padding_height, 0);
1918  }
1919  void add_padding_width(uint32_t padding_width) {
1920  fbb_.AddElement<uint32_t>(MaxPool2dOp::VT_PADDING_WIDTH, padding_width, 0);
1921  }
1922  explicit MaxPool2dOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1923  : fbb_(_fbb) {
1924  start_ = fbb_.StartTable();
1925  }
1926  ::flatbuffers::Offset<MaxPool2dOp> Finish() {
1927  const auto end = fbb_.EndTable(start_);
1928  auto o = ::flatbuffers::Offset<MaxPool2dOp>(end);
1929  return o;
1930  }
1931 };
1932 
1933 inline ::flatbuffers::Offset<MaxPool2dOp> CreateMaxPool2dOp(
1934  ::flatbuffers::FlatBufferBuilder &_fbb,
1935  ::flatbuffers::Offset<tt::target::TensorRef> in = 0,
1936  ::flatbuffers::Offset<tt::target::TensorRef> out = 0,
1937  ::flatbuffers::Offset<tt::target::DeviceRef> device = 0,
1938  uint32_t batch_size = 0,
1939  uint32_t input_height = 0,
1940  uint32_t input_width = 0,
1941  uint32_t channels = 0,
1942  uint32_t kernel_height = 0,
1943  uint32_t kernel_width = 0,
1944  uint32_t stride_height = 0,
1945  uint32_t stride_width = 0,
1946  uint32_t dilation_height = 0,
1947  uint32_t dilation_width = 0,
1948  bool ceil_mode = false,
1949  uint32_t padding_height = 0,
1950  uint32_t padding_width = 0) {
1951  MaxPool2dOpBuilder builder_(_fbb);
1952  builder_.add_padding_width(padding_width);
1953  builder_.add_padding_height(padding_height);
1954  builder_.add_dilation_width(dilation_width);
1955  builder_.add_dilation_height(dilation_height);
1956  builder_.add_stride_width(stride_width);
1957  builder_.add_stride_height(stride_height);
1958  builder_.add_kernel_width(kernel_width);
1959  builder_.add_kernel_height(kernel_height);
1960  builder_.add_channels(channels);
1961  builder_.add_input_width(input_width);
1962  builder_.add_input_height(input_height);
1963  builder_.add_batch_size(batch_size);
1964  builder_.add_device(device);
1965  builder_.add_out(out);
1966  builder_.add_in(in);
1967  builder_.add_ceil_mode(ceil_mode);
1968  return builder_.Finish();
1969 }
1970 
1973  static auto constexpr Create = CreateMaxPool2dOp;
1974 };
1975 
1976 struct DeallocOp FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1978  struct Traits;
1979  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1980  VT_IN = 4
1981  };
1982  const tt::target::TensorRef *in() const {
1983  return GetPointer<const tt::target::TensorRef *>(VT_IN);
1984  }
1985  bool Verify(::flatbuffers::Verifier &verifier) const {
1986  return VerifyTableStart(verifier) &&
1987  VerifyOffset(verifier, VT_IN) &&
1988  verifier.VerifyTable(in()) &&
1989  verifier.EndTable();
1990  }
1991 };
1992 
1994  typedef DeallocOp Table;
1995  ::flatbuffers::FlatBufferBuilder &fbb_;
1996  ::flatbuffers::uoffset_t start_;
1997  void add_in(::flatbuffers::Offset<tt::target::TensorRef> in) {
1998  fbb_.AddOffset(DeallocOp::VT_IN, in);
1999  }
2000  explicit DeallocOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
2001  : fbb_(_fbb) {
2002  start_ = fbb_.StartTable();
2003  }
2004  ::flatbuffers::Offset<DeallocOp> Finish() {
2005  const auto end = fbb_.EndTable(start_);
2006  auto o = ::flatbuffers::Offset<DeallocOp>(end);
2007  return o;
2008  }
2009 };
2010 
2011 inline ::flatbuffers::Offset<DeallocOp> CreateDeallocOp(
2012  ::flatbuffers::FlatBufferBuilder &_fbb,
2013  ::flatbuffers::Offset<tt::target::TensorRef> in = 0) {
2014  DeallocOpBuilder builder_(_fbb);
2015  builder_.add_in(in);
2016  return builder_.Finish();
2017 }
2018 
2020  using type = DeallocOp;
2021  static auto constexpr Create = CreateDeallocOp;
2022 };
2023 
2024 struct Operation FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
2026  struct Traits;
2027  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
2029  VT_TYPE = 6,
2030  VT_DEBUG_INFO = 8
2031  };
2033  return static_cast<tt::target::ttnn::OpType>(GetField<uint8_t>(VT_TYPE_TYPE, 0));
2034  }
2035  const void *type() const {
2036  return GetPointer<const void *>(VT_TYPE);
2037  }
2038  template<typename T> const T *type_as() const;
2039  const tt::target::ttnn::GetDeviceOp *type_as_GetDeviceOp() const {
2040  return type_type() == tt::target::ttnn::OpType::GetDeviceOp ? static_cast<const tt::target::ttnn::GetDeviceOp *>(type()) : nullptr;
2041  }
2042  const tt::target::ttnn::ToMemoryConfigOp *type_as_ToMemoryConfigOp() const {
2043  return type_type() == tt::target::ttnn::OpType::ToMemoryConfigOp ? static_cast<const tt::target::ttnn::ToMemoryConfigOp *>(type()) : nullptr;
2044  }
2045  const tt::target::ttnn::ToLayoutOp *type_as_ToLayoutOp() const {
2046  return type_type() == tt::target::ttnn::OpType::ToLayoutOp ? static_cast<const tt::target::ttnn::ToLayoutOp *>(type()) : nullptr;
2047  }
2048  const tt::target::ttnn::ToDeviceOp *type_as_ToDeviceOp() const {
2049  return type_type() == tt::target::ttnn::OpType::ToDeviceOp ? static_cast<const tt::target::ttnn::ToDeviceOp *>(type()) : nullptr;
2050  }
2051  const tt::target::ttnn::FromDeviceOp *type_as_FromDeviceOp() const {
2052  return type_type() == tt::target::ttnn::OpType::FromDeviceOp ? static_cast<const tt::target::ttnn::FromDeviceOp *>(type()) : nullptr;
2053  }
2054  const tt::target::ttnn::EmptyOp *type_as_EmptyOp() const {
2055  return type_type() == tt::target::ttnn::OpType::EmptyOp ? static_cast<const tt::target::ttnn::EmptyOp *>(type()) : nullptr;
2056  }
2057  const tt::target::ttnn::FullOp *type_as_FullOp() const {
2058  return type_type() == tt::target::ttnn::OpType::FullOp ? static_cast<const tt::target::ttnn::FullOp *>(type()) : nullptr;
2059  }
2060  const tt::target::ttnn::EltwiseOp *type_as_EltwiseOp() const {
2061  return type_type() == tt::target::ttnn::OpType::EltwiseOp ? static_cast<const tt::target::ttnn::EltwiseOp *>(type()) : nullptr;
2062  }
2063  const tt::target::ttnn::MatmulOp *type_as_MatmulOp() const {
2064  return type_type() == tt::target::ttnn::OpType::MatmulOp ? static_cast<const tt::target::ttnn::MatmulOp *>(type()) : nullptr;
2065  }
2066  const tt::target::ttnn::ReductionOp *type_as_ReductionOp() const {
2067  return type_type() == tt::target::ttnn::OpType::ReductionOp ? static_cast<const tt::target::ttnn::ReductionOp *>(type()) : nullptr;
2068  }
2069  const tt::target::ttnn::EmbeddingOp *type_as_EmbeddingOp() const {
2070  return type_type() == tt::target::ttnn::OpType::EmbeddingOp ? static_cast<const tt::target::ttnn::EmbeddingOp *>(type()) : nullptr;
2071  }
2072  const tt::target::ttnn::SoftmaxOp *type_as_SoftmaxOp() const {
2073  return type_type() == tt::target::ttnn::OpType::SoftmaxOp ? static_cast<const tt::target::ttnn::SoftmaxOp *>(type()) : nullptr;
2074  }
2075  const tt::target::ttnn::TransposeOp *type_as_TransposeOp() const {
2076  return type_type() == tt::target::ttnn::OpType::TransposeOp ? static_cast<const tt::target::ttnn::TransposeOp *>(type()) : nullptr;
2077  }
2078  const tt::target::ttnn::Conv2dOp *type_as_Conv2dOp() const {
2079  return type_type() == tt::target::ttnn::OpType::Conv2dOp ? static_cast<const tt::target::ttnn::Conv2dOp *>(type()) : nullptr;
2080  }
2081  const tt::target::ttnn::ConcatOp *type_as_ConcatOp() const {
2082  return type_type() == tt::target::ttnn::OpType::ConcatOp ? static_cast<const tt::target::ttnn::ConcatOp *>(type()) : nullptr;
2083  }
2084  const tt::target::ttnn::ReshapeOp *type_as_ReshapeOp() const {
2085  return type_type() == tt::target::ttnn::OpType::ReshapeOp ? static_cast<const tt::target::ttnn::ReshapeOp *>(type()) : nullptr;
2086  }
2087  const tt::target::ttnn::MaxPool2dOp *type_as_MaxPool2dOp() const {
2088  return type_type() == tt::target::ttnn::OpType::MaxPool2dOp ? static_cast<const tt::target::ttnn::MaxPool2dOp *>(type()) : nullptr;
2089  }
2090  const tt::target::ttnn::DeallocOp *type_as_DeallocOp() const {
2091  return type_type() == tt::target::ttnn::OpType::DeallocOp ? static_cast<const tt::target::ttnn::DeallocOp *>(type()) : nullptr;
2092  }
2093  const ::flatbuffers::String *debug_info() const {
2094  return GetPointer<const ::flatbuffers::String *>(VT_DEBUG_INFO);
2095  }
2096  bool Verify(::flatbuffers::Verifier &verifier) const {
2097  return VerifyTableStart(verifier) &&
2098  VerifyField<uint8_t>(verifier, VT_TYPE_TYPE, 1) &&
2099  VerifyOffset(verifier, VT_TYPE) &&
2100  VerifyOpType(verifier, type(), type_type()) &&
2101  VerifyOffset(verifier, VT_DEBUG_INFO) &&
2102  verifier.VerifyString(debug_info()) &&
2103  verifier.EndTable();
2104  }
2105 };
2106 
2107 template<> inline const tt::target::ttnn::GetDeviceOp *Operation::type_as<tt::target::ttnn::GetDeviceOp>() const {
2108  return type_as_GetDeviceOp();
2109 }
2110 
2111 template<> inline const tt::target::ttnn::ToMemoryConfigOp *Operation::type_as<tt::target::ttnn::ToMemoryConfigOp>() const {
2112  return type_as_ToMemoryConfigOp();
2113 }
2114 
2115 template<> inline const tt::target::ttnn::ToLayoutOp *Operation::type_as<tt::target::ttnn::ToLayoutOp>() const {
2116  return type_as_ToLayoutOp();
2117 }
2118 
2119 template<> inline const tt::target::ttnn::ToDeviceOp *Operation::type_as<tt::target::ttnn::ToDeviceOp>() const {
2120  return type_as_ToDeviceOp();
2121 }
2122 
2123 template<> inline const tt::target::ttnn::FromDeviceOp *Operation::type_as<tt::target::ttnn::FromDeviceOp>() const {
2124  return type_as_FromDeviceOp();
2125 }
2126 
2127 template<> inline const tt::target::ttnn::EmptyOp *Operation::type_as<tt::target::ttnn::EmptyOp>() const {
2128  return type_as_EmptyOp();
2129 }
2130 
2131 template<> inline const tt::target::ttnn::FullOp *Operation::type_as<tt::target::ttnn::FullOp>() const {
2132  return type_as_FullOp();
2133 }
2134 
2135 template<> inline const tt::target::ttnn::EltwiseOp *Operation::type_as<tt::target::ttnn::EltwiseOp>() const {
2136  return type_as_EltwiseOp();
2137 }
2138 
2139 template<> inline const tt::target::ttnn::MatmulOp *Operation::type_as<tt::target::ttnn::MatmulOp>() const {
2140  return type_as_MatmulOp();
2141 }
2142 
2143 template<> inline const tt::target::ttnn::ReductionOp *Operation::type_as<tt::target::ttnn::ReductionOp>() const {
2144  return type_as_ReductionOp();
2145 }
2146 
2147 template<> inline const tt::target::ttnn::EmbeddingOp *Operation::type_as<tt::target::ttnn::EmbeddingOp>() const {
2148  return type_as_EmbeddingOp();
2149 }
2150 
2151 template<> inline const tt::target::ttnn::SoftmaxOp *Operation::type_as<tt::target::ttnn::SoftmaxOp>() const {
2152  return type_as_SoftmaxOp();
2153 }
2154 
2155 template<> inline const tt::target::ttnn::TransposeOp *Operation::type_as<tt::target::ttnn::TransposeOp>() const {
2156  return type_as_TransposeOp();
2157 }
2158 
2159 template<> inline const tt::target::ttnn::Conv2dOp *Operation::type_as<tt::target::ttnn::Conv2dOp>() const {
2160  return type_as_Conv2dOp();
2161 }
2162 
2163 template<> inline const tt::target::ttnn::ConcatOp *Operation::type_as<tt::target::ttnn::ConcatOp>() const {
2164  return type_as_ConcatOp();
2165 }
2166 
2167 template<> inline const tt::target::ttnn::ReshapeOp *Operation::type_as<tt::target::ttnn::ReshapeOp>() const {
2168  return type_as_ReshapeOp();
2169 }
2170 
2171 template<> inline const tt::target::ttnn::MaxPool2dOp *Operation::type_as<tt::target::ttnn::MaxPool2dOp>() const {
2172  return type_as_MaxPool2dOp();
2173 }
2174 
2175 template<> inline const tt::target::ttnn::DeallocOp *Operation::type_as<tt::target::ttnn::DeallocOp>() const {
2176  return type_as_DeallocOp();
2177 }
2178 
2180  typedef Operation Table;
2181  ::flatbuffers::FlatBufferBuilder &fbb_;
2182  ::flatbuffers::uoffset_t start_;
2184  fbb_.AddElement<uint8_t>(Operation::VT_TYPE_TYPE, static_cast<uint8_t>(type_type), 0);
2185  }
2186  void add_type(::flatbuffers::Offset<void> type) {
2187  fbb_.AddOffset(Operation::VT_TYPE, type);
2188  }
2189  void add_debug_info(::flatbuffers::Offset<::flatbuffers::String> debug_info) {
2190  fbb_.AddOffset(Operation::VT_DEBUG_INFO, debug_info);
2191  }
2192  explicit OperationBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
2193  : fbb_(_fbb) {
2194  start_ = fbb_.StartTable();
2195  }
2196  ::flatbuffers::Offset<Operation> Finish() {
2197  const auto end = fbb_.EndTable(start_);
2198  auto o = ::flatbuffers::Offset<Operation>(end);
2199  return o;
2200  }
2201 };
2202 
2203 inline ::flatbuffers::Offset<Operation> CreateOperation(
2204  ::flatbuffers::FlatBufferBuilder &_fbb,
2206  ::flatbuffers::Offset<void> type = 0,
2207  ::flatbuffers::Offset<::flatbuffers::String> debug_info = 0) {
2208  OperationBuilder builder_(_fbb);
2209  builder_.add_debug_info(debug_info);
2210  builder_.add_type(type);
2211  builder_.add_type_type(type_type);
2212  return builder_.Finish();
2213 }
2214 
2216  using type = Operation;
2217  static auto constexpr Create = CreateOperation;
2218 };
2219 
2220 inline ::flatbuffers::Offset<Operation> CreateOperationDirect(
2221  ::flatbuffers::FlatBufferBuilder &_fbb,
2223  ::flatbuffers::Offset<void> type = 0,
2224  const char *debug_info = nullptr) {
2225  auto debug_info__ = debug_info ? _fbb.CreateString(debug_info) : 0;
2227  _fbb,
2228  type_type,
2229  type,
2230  debug_info__);
2231 }
2232 
2233 struct Program FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
2235  struct Traits;
2236  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
2237  VT_NAME = 4,
2238  VT_INPUTS = 6,
2241  VT_DEBUG_INFO = 12
2242  };
2243  const ::flatbuffers::String *name() const {
2244  return GetPointer<const ::flatbuffers::String *>(VT_NAME);
2245  }
2246  const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *inputs() const {
2247  return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *>(VT_INPUTS);
2248  }
2249  const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *outputs() const {
2250  return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>> *>(VT_OUTPUTS);
2251  }
2252  const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ttnn::Operation>> *operations() const {
2253  return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ttnn::Operation>> *>(VT_OPERATIONS);
2254  }
2255  const tt::target::DebugInfo *debug_info() const {
2256  return GetPointer<const tt::target::DebugInfo *>(VT_DEBUG_INFO);
2257  }
2258  bool Verify(::flatbuffers::Verifier &verifier) const {
2259  return VerifyTableStart(verifier) &&
2260  VerifyOffset(verifier, VT_NAME) &&
2261  verifier.VerifyString(name()) &&
2262  VerifyOffset(verifier, VT_INPUTS) &&
2263  verifier.VerifyVector(inputs()) &&
2264  verifier.VerifyVectorOfTables(inputs()) &&
2265  VerifyOffset(verifier, VT_OUTPUTS) &&
2266  verifier.VerifyVector(outputs()) &&
2267  verifier.VerifyVectorOfTables(outputs()) &&
2268  VerifyOffset(verifier, VT_OPERATIONS) &&
2269  verifier.VerifyVector(operations()) &&
2270  verifier.VerifyVectorOfTables(operations()) &&
2271  VerifyOffset(verifier, VT_DEBUG_INFO) &&
2272  verifier.VerifyTable(debug_info()) &&
2273  verifier.EndTable();
2274  }
2275 };
2276 
2278  typedef Program Table;
2279  ::flatbuffers::FlatBufferBuilder &fbb_;
2280  ::flatbuffers::uoffset_t start_;
2281  void add_name(::flatbuffers::Offset<::flatbuffers::String> name) {
2282  fbb_.AddOffset(Program::VT_NAME, name);
2283  }
2284  void add_inputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> inputs) {
2285  fbb_.AddOffset(Program::VT_INPUTS, inputs);
2286  }
2287  void add_outputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> outputs) {
2288  fbb_.AddOffset(Program::VT_OUTPUTS, outputs);
2289  }
2290  void add_operations(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ttnn::Operation>>> operations) {
2291  fbb_.AddOffset(Program::VT_OPERATIONS, operations);
2292  }
2293  void add_debug_info(::flatbuffers::Offset<tt::target::DebugInfo> debug_info) {
2294  fbb_.AddOffset(Program::VT_DEBUG_INFO, debug_info);
2295  }
2296  explicit ProgramBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
2297  : fbb_(_fbb) {
2298  start_ = fbb_.StartTable();
2299  }
2300  ::flatbuffers::Offset<Program> Finish() {
2301  const auto end = fbb_.EndTable(start_);
2302  auto o = ::flatbuffers::Offset<Program>(end);
2303  return o;
2304  }
2305 };
2306 
2307 inline ::flatbuffers::Offset<Program> CreateProgram(
2308  ::flatbuffers::FlatBufferBuilder &_fbb,
2309  ::flatbuffers::Offset<::flatbuffers::String> name = 0,
2310  ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> inputs = 0,
2311  ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::TensorRef>>> outputs = 0,
2312  ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ttnn::Operation>>> operations = 0,
2313  ::flatbuffers::Offset<tt::target::DebugInfo> debug_info = 0) {
2314  ProgramBuilder builder_(_fbb);
2315  builder_.add_debug_info(debug_info);
2316  builder_.add_operations(operations);
2317  builder_.add_outputs(outputs);
2318  builder_.add_inputs(inputs);
2319  builder_.add_name(name);
2320  return builder_.Finish();
2321 }
2322 
2324  using type = Program;
2325  static auto constexpr Create = CreateProgram;
2326 };
2327 
2328 inline ::flatbuffers::Offset<Program> CreateProgramDirect(
2329  ::flatbuffers::FlatBufferBuilder &_fbb,
2330  const char *name = nullptr,
2331  const std::vector<::flatbuffers::Offset<tt::target::TensorRef>> *inputs = nullptr,
2332  const std::vector<::flatbuffers::Offset<tt::target::TensorRef>> *outputs = nullptr,
2333  const std::vector<::flatbuffers::Offset<tt::target::ttnn::Operation>> *operations = nullptr,
2334  ::flatbuffers::Offset<tt::target::DebugInfo> debug_info = 0) {
2335  auto name__ = name ? _fbb.CreateString(name) : 0;
2336  auto inputs__ = inputs ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::TensorRef>>(*inputs) : 0;
2337  auto outputs__ = outputs ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::TensorRef>>(*outputs) : 0;
2338  auto operations__ = operations ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::ttnn::Operation>>(*operations) : 0;
2340  _fbb,
2341  name__,
2342  inputs__,
2343  outputs__,
2344  operations__,
2345  debug_info);
2346 }
2347 
2348 inline bool VerifyOpType(::flatbuffers::Verifier &verifier, const void *obj, OpType type) {
2349  switch (type) {
2350  case OpType::NONE: {
2351  return true;
2352  }
2353  case OpType::GetDeviceOp: {
2354  auto ptr = reinterpret_cast<const tt::target::ttnn::GetDeviceOp *>(obj);
2355  return verifier.VerifyTable(ptr);
2356  }
2357  case OpType::ToMemoryConfigOp: {
2358  auto ptr = reinterpret_cast<const tt::target::ttnn::ToMemoryConfigOp *>(obj);
2359  return verifier.VerifyTable(ptr);
2360  }
2361  case OpType::ToLayoutOp: {
2362  auto ptr = reinterpret_cast<const tt::target::ttnn::ToLayoutOp *>(obj);
2363  return verifier.VerifyTable(ptr);
2364  }
2365  case OpType::ToDeviceOp: {
2366  auto ptr = reinterpret_cast<const tt::target::ttnn::ToDeviceOp *>(obj);
2367  return verifier.VerifyTable(ptr);
2368  }
2369  case OpType::FromDeviceOp: {
2370  auto ptr = reinterpret_cast<const tt::target::ttnn::FromDeviceOp *>(obj);
2371  return verifier.VerifyTable(ptr);
2372  }
2373  case OpType::EmptyOp: {
2374  auto ptr = reinterpret_cast<const tt::target::ttnn::EmptyOp *>(obj);
2375  return verifier.VerifyTable(ptr);
2376  }
2377  case OpType::FullOp: {
2378  auto ptr = reinterpret_cast<const tt::target::ttnn::FullOp *>(obj);
2379  return verifier.VerifyTable(ptr);
2380  }
2381  case OpType::EltwiseOp: {
2382  auto ptr = reinterpret_cast<const tt::target::ttnn::EltwiseOp *>(obj);
2383  return verifier.VerifyTable(ptr);
2384  }
2385  case OpType::MatmulOp: {
2386  auto ptr = reinterpret_cast<const tt::target::ttnn::MatmulOp *>(obj);
2387  return verifier.VerifyTable(ptr);
2388  }
2389  case OpType::ReductionOp: {
2390  auto ptr = reinterpret_cast<const tt::target::ttnn::ReductionOp *>(obj);
2391  return verifier.VerifyTable(ptr);
2392  }
2393  case OpType::EmbeddingOp: {
2394  auto ptr = reinterpret_cast<const tt::target::ttnn::EmbeddingOp *>(obj);
2395  return verifier.VerifyTable(ptr);
2396  }
2397  case OpType::SoftmaxOp: {
2398  auto ptr = reinterpret_cast<const tt::target::ttnn::SoftmaxOp *>(obj);
2399  return verifier.VerifyTable(ptr);
2400  }
2401  case OpType::TransposeOp: {
2402  auto ptr = reinterpret_cast<const tt::target::ttnn::TransposeOp *>(obj);
2403  return verifier.VerifyTable(ptr);
2404  }
2405  case OpType::Conv2dOp: {
2406  auto ptr = reinterpret_cast<const tt::target::ttnn::Conv2dOp *>(obj);
2407  return verifier.VerifyTable(ptr);
2408  }
2409  case OpType::ConcatOp: {
2410  auto ptr = reinterpret_cast<const tt::target::ttnn::ConcatOp *>(obj);
2411  return verifier.VerifyTable(ptr);
2412  }
2413  case OpType::ReshapeOp: {
2414  auto ptr = reinterpret_cast<const tt::target::ttnn::ReshapeOp *>(obj);
2415  return verifier.VerifyTable(ptr);
2416  }
2417  case OpType::MaxPool2dOp: {
2418  auto ptr = reinterpret_cast<const tt::target::ttnn::MaxPool2dOp *>(obj);
2419  return verifier.VerifyTable(ptr);
2420  }
2421  case OpType::DeallocOp: {
2422  auto ptr = reinterpret_cast<const tt::target::ttnn::DeallocOp *>(obj);
2423  return verifier.VerifyTable(ptr);
2424  }
2425  default: return true;
2426  }
2427 }
2428 
2429 inline bool VerifyOpTypeVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<OpType> *types) {
2430  if (!values || !types) return !values && !types;
2431  if (values->size() != types->size()) return false;
2432  for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
2433  if (!VerifyOpType(
2434  verifier, values->Get(i), types->GetEnum<OpType>(i))) {
2435  return false;
2436  }
2437  }
2438  return true;
2439 }
2440 
2441 } // namespace ttnn
2442 } // namespace target
2443 } // namespace tt
2444 
2445 #endif // FLATBUFFERS_GENERATED_PROGRAM_TT_TARGET_TTNN_H_
VT_LAYOUT
Definition: program_generated.h:496
VT_IN0
Definition: program_generated.h:425
VT_KERNEL_WIDTH
Definition: program_generated.h:1559
VT_INPUT
Definition: program_generated.h:1094
VT_DTYPE
Definition: program_generated.h:716
VT_SHAPE
Definition: program_generated.h:715
VT_IN1
Definition: program_generated.h:1479
VT_STRIDE_HEIGHT
Definition: program_generated.h:1560
VT_WEIGHT
Definition: program_generated.h:1095
VT_DIM0
Definition: program_generated.h:1235
VT_CHANNELS
Definition: program_generated.h:1786
VT_KERNEL_HEIGHT
Definition: program_generated.h:1558
VT_BATCH_SIZE
Definition: program_generated.h:1555
VT_MESH
Definition: program_generated.h:343
VT_DIM_ARG
Definition: program_generated.h:990
VT_TYPE_TYPE
Definition: program_generated.h:2028
VT_PADDING_WIDTH
Definition: program_generated.h:1563
VT_STRIDE_WIDTH
Definition: program_generated.h:1561
VT_INPUTS
Definition: program_generated.h:1312
VT_CHIP_IDS
Definition: program_generated.h:344
VT_TYPE
Definition: program_generated.h:904
VT_INPUT_HEIGHT
Definition: program_generated.h:1556
VT_IN_CHANNELS
Definition: program_generated.h:1553
VT_OUTPUTS
Definition: program_generated.h:2239
VT_IN
Definition: program_generated.h:495
VT_DEVICE
Definition: program_generated.h:426
VT_DILATION_WIDTH
Definition: program_generated.h:1565
VT_FILL_VALUE
Definition: program_generated.h:836
VT_INPUT_WIDTH
Definition: program_generated.h:1557
VT_DILATION_HEIGHT
Definition: program_generated.h:1564
VT_NAME
Definition: program_generated.h:2237
VT_BIAS
Definition: program_generated.h:1550
VT_OUT
Definition: program_generated.h:989
VT_PADDING_HEIGHT
Definition: program_generated.h:1562
VT_OPERATIONS
Definition: program_generated.h:2240
VT_OUT_CHANNELS
Definition: program_generated.h:1554
VT_INS
Definition: program_generated.h:905
VT_MEMCFG
Definition: program_generated.h:577
VT_CEIL_MODE
Definition: program_generated.h:1793
inline ::flatbuffers::Offset< Operation > CreateOperation(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::OpType type_type=tt::target::ttnn::OpType::NONE, ::flatbuffers::Offset< void > type=0, ::flatbuffers::Offset<::flatbuffers::String > debug_info=0)
Definition: program_generated.h:2203
EltwiseOpType
Definition: program_generated.h:83
inline ::flatbuffers::Offset< ToLayoutOp > CreateToLayoutOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, tt::target::TensorLayout layout=tt::target::TensorLayout::RowMajor, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:552
bool VerifyOpTypeVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset< void >> *values, const ::flatbuffers::Vector< OpType > *types)
Definition: program_generated.h:2429
inline ::flatbuffers::Offset< Program > CreateProgram(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::String > name=0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> inputs=0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> outputs=0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::ttnn::Operation >>> operations=0, ::flatbuffers::Offset< tt::target::DebugInfo > debug_info=0)
Definition: program_generated.h:2307
inline ::flatbuffers::Offset< Program > CreateProgramDirect(::flatbuffers::FlatBufferBuilder &_fbb, const char *name=nullptr, const std::vector<::flatbuffers::Offset< tt::target::TensorRef >> *inputs=nullptr, const std::vector<::flatbuffers::Offset< tt::target::TensorRef >> *outputs=nullptr, const std::vector<::flatbuffers::Offset< tt::target::ttnn::Operation >> *operations=nullptr, ::flatbuffers::Offset< tt::target::DebugInfo > debug_info=0)
Definition: program_generated.h:2328
const EltwiseOpType(& EnumValuesEltwiseOpType())[13]
Definition: program_generated.h:101
inline ::flatbuffers::Offset< ReductionOp > CreateReductionOp(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::ReductionOpType type=tt::target::ttnn::ReductionOpType::Sum, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, ::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> dim_arg=0, bool keep_dim=false)
Definition: program_generated.h:1052
inline ::flatbuffers::Offset< TransposeOp > CreateTransposeOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, int32_t dim0=0, int32_t dim1=0)
Definition: program_generated.h:1289
inline ::flatbuffers::Offset< ToMemoryConfigOp > CreateToMemoryConfigOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in0=0, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:474
const char * EnumNameEltwiseOpType(EltwiseOpType e)
Definition: program_generated.h:140
inline ::flatbuffers::Offset< MatmulOp > CreateMatmulOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in0=0, ::flatbuffers::Offset< tt::target::TensorRef > in1=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:1527
ReductionOpType
Definition: program_generated.h:146
inline ::flatbuffers::Offset< FullOp > CreateFullOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, float fill_value=0.0f, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:883
OpType
Definition: program_generated.h:179
inline ::flatbuffers::Offset< EltwiseOp > CreateEltwiseOpDirect(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::EltwiseOpType type=tt::target::ttnn::EltwiseOpType::Add, const std::vector<::flatbuffers::Offset< tt::target::TensorRef >> *ins=nullptr, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:970
inline ::flatbuffers::Offset< GetDeviceOp > CreateGetDeviceOp(::flatbuffers::FlatBufferBuilder &_fbb, const tt::target::Dim2d *mesh=nullptr, ::flatbuffers::Offset<::flatbuffers::Vector< uint32_t >> chip_ids=0, ::flatbuffers::Offset< tt::target::DeviceRef > out=0)
Definition: program_generated.h:391
inline ::flatbuffers::Offset< EmptyOp > CreateEmptyOpDirect(::flatbuffers::FlatBufferBuilder &_fbb, const std::vector< int64_t > *shape=nullptr, tt::target::DataType dtype=tt::target::DataType::Float32, tt::target::TensorLayout layout=tt::target::TensorLayout::RowMajor, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, ::flatbuffers::Offset< tt::target::MemoryConfigDesc > memcfg=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:812
const char *const * EnumNamesReductionOpType()
Definition: program_generated.h:163
const char * EnumNameReductionOpType(ReductionOpType e)
Definition: program_generated.h:173
const char *const * EnumNamesEltwiseOpType()
Definition: program_generated.h:120
inline ::flatbuffers::Offset< EltwiseOp > CreateEltwiseOp(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::EltwiseOpType type=tt::target::ttnn::EltwiseOpType::Add, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> ins=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:953
inline ::flatbuffers::Offset< GetDeviceOp > CreateGetDeviceOpDirect(::flatbuffers::FlatBufferBuilder &_fbb, const tt::target::Dim2d *mesh=nullptr, const std::vector< uint32_t > *chip_ids=nullptr, ::flatbuffers::Offset< tt::target::DeviceRef > out=0)
Definition: program_generated.h:408
const ReductionOpType(& EnumValuesReductionOpType())[3]
Definition: program_generated.h:154
inline ::flatbuffers::Offset< FromDeviceOp > CreateFromDeviceOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:696
inline ::flatbuffers::Offset< Conv2dOp > CreateConv2dOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > input=0, ::flatbuffers::Offset< tt::target::TensorRef > weight=0, ::flatbuffers::Offset< tt::target::TensorRef > bias=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, uint32_t in_channels=0, uint32_t out_channels=0, uint32_t batch_size=0, uint32_t input_height=0, uint32_t input_width=0, uint32_t kernel_height=0, uint32_t kernel_width=0, uint32_t stride_height=0, uint32_t stride_width=0, uint32_t padding_height=0, uint32_t padding_width=0, uint32_t dilation_height=0, uint32_t dilation_width=0, uint32_t groups=0)
Definition: program_generated.h:1727
const char *const * EnumNamesOpType()
Definition: program_generated.h:228
inline ::flatbuffers::Offset< DeallocOp > CreateDeallocOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0)
Definition: program_generated.h:2011
const char * EnumNameOpType(OpType e)
Definition: program_generated.h:254
bool VerifyOpType(::flatbuffers::Verifier &verifier, const void *obj, OpType type)
Definition: program_generated.h:2348
inline ::flatbuffers::Offset< ConcatOp > CreateConcatOpDirect(::flatbuffers::FlatBufferBuilder &_fbb, const std::vector<::flatbuffers::Offset< tt::target::TensorRef >> *inputs=nullptr, ::flatbuffers::Offset< tt::target::TensorRef > out=0, int32_t dim=0)
Definition: program_generated.h:1378
inline ::flatbuffers::Offset< ReshapeOp > CreateReshapeOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, ::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> shape=0)
Definition: program_generated.h:1444
inline ::flatbuffers::Offset< ReshapeOp > CreateReshapeOpDirect(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, const std::vector< int32_t > *shape=nullptr)
Definition: program_generated.h:1461
inline ::flatbuffers::Offset< EmptyOp > CreateEmptyOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::Vector< int64_t >> shape=0, tt::target::DataType dtype=tt::target::DataType::Float32, tt::target::TensorLayout layout=tt::target::TensorLayout::RowMajor, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, ::flatbuffers::Offset< tt::target::MemoryConfigDesc > memcfg=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:789
inline ::flatbuffers::Offset< ConcatOp > CreateConcatOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> inputs=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, int32_t dim=0)
Definition: program_generated.h:1361
inline ::flatbuffers::Offset< ReductionOp > CreateReductionOpDirect(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::ReductionOpType type=tt::target::ttnn::ReductionOpType::Sum, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, const std::vector< int32_t > *dim_arg=nullptr, bool keep_dim=false)
Definition: program_generated.h:1073
inline ::flatbuffers::Offset< MaxPool2dOp > CreateMaxPool2dOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, uint32_t batch_size=0, uint32_t input_height=0, uint32_t input_width=0, uint32_t channels=0, uint32_t kernel_height=0, uint32_t kernel_width=0, uint32_t stride_height=0, uint32_t stride_width=0, uint32_t dilation_height=0, uint32_t dilation_width=0, bool ceil_mode=false, uint32_t padding_height=0, uint32_t padding_width=0)
Definition: program_generated.h:1933
inline ::flatbuffers::Offset< Operation > CreateOperationDirect(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::OpType type_type=tt::target::ttnn::OpType::NONE, ::flatbuffers::Offset< void > type=0, const char *debug_info=nullptr)
Definition: program_generated.h:2220
inline ::flatbuffers::Offset< ToDeviceOp > CreateToDeviceOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::DeviceRef > device=0, ::flatbuffers::Offset< tt::target::MemoryConfigDesc > memcfg=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0)
Definition: program_generated.h:633
const OpType(& EnumValuesOpType())[19]
Definition: program_generated.h:203
inline ::flatbuffers::Offset< EmbeddingOp > CreateEmbeddingOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > input=0, ::flatbuffers::Offset< tt::target::TensorRef > weight=0, ::flatbuffers::Offset< tt::target::TensorRef > output=0)
Definition: program_generated.h:1143
inline ::flatbuffers::Offset< SoftmaxOp > CreateSoftmaxOp(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset< tt::target::TensorRef > in=0, ::flatbuffers::Offset< tt::target::TensorRef > out=0, int32_t dimension=0)
Definition: program_generated.h:1212
TensorLayout
Definition: types_generated.h:304
DataType
Definition: types_generated.h:96
Definition: debug_info_generated.h:16
Definition: debug_info_generated.h:25
Definition: program_generated.h:1337
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1339
void add_dim(int32_t dim)
Definition: program_generated.h:1347
::flatbuffers::Offset< ConcatOp > Finish()
Definition: program_generated.h:1354
ConcatOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1350
void add_inputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> inputs)
Definition: program_generated.h:1341
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1340
ConcatOp Table
Definition: program_generated.h:1338
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1344
Definition: program_generated.h:1373
ConcatOp type
Definition: program_generated.h:1374
static constexpr auto Create
Definition: program_generated.h:1375
Definition: program_generated.h:1655
void add_in_channels(uint32_t in_channels)
Definition: program_generated.h:1674
void add_input_width(uint32_t input_width)
Definition: program_generated.h:1686
void add_input(::flatbuffers::Offset< tt::target::TensorRef > input)
Definition: program_generated.h:1659
Conv2dOp Table
Definition: program_generated.h:1656
void add_out_channels(uint32_t out_channels)
Definition: program_generated.h:1677
::flatbuffers::Offset< Conv2dOp > Finish()
Definition: program_generated.h:1720
void add_stride_width(uint32_t stride_width)
Definition: program_generated.h:1698
void add_device(::flatbuffers::Offset< tt::target::DeviceRef > device)
Definition: program_generated.h:1671
Conv2dOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1716
void add_groups(uint32_t groups)
Definition: program_generated.h:1713
void add_padding_width(uint32_t padding_width)
Definition: program_generated.h:1704
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1668
void add_dilation_width(uint32_t dilation_width)
Definition: program_generated.h:1710
void add_kernel_width(uint32_t kernel_width)
Definition: program_generated.h:1692
void add_kernel_height(uint32_t kernel_height)
Definition: program_generated.h:1689
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1658
void add_padding_height(uint32_t padding_height)
Definition: program_generated.h:1701
void add_batch_size(uint32_t batch_size)
Definition: program_generated.h:1680
void add_bias(::flatbuffers::Offset< tt::target::TensorRef > bias)
Definition: program_generated.h:1665
void add_input_height(uint32_t input_height)
Definition: program_generated.h:1683
void add_stride_height(uint32_t stride_height)
Definition: program_generated.h:1695
void add_dilation_height(uint32_t dilation_height)
Definition: program_generated.h:1707
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1657
void add_weight(::flatbuffers::Offset< tt::target::TensorRef > weight)
Definition: program_generated.h:1662
Definition: program_generated.h:1771
static constexpr auto Create
Definition: program_generated.h:1773
Conv2dOp type
Definition: program_generated.h:1772
Definition: program_generated.h:1993
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1996
::flatbuffers::Offset< DeallocOp > Finish()
Definition: program_generated.h:2004
DeallocOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:2000
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:1997
DeallocOp Table
Definition: program_generated.h:1994
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1995
Definition: program_generated.h:2019
DeallocOp type
Definition: program_generated.h:2020
static constexpr auto Create
Definition: program_generated.h:2021
Definition: program_generated.h:929
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:939
::flatbuffers::Offset< EltwiseOp > Finish()
Definition: program_generated.h:946
EltwiseOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:942
void add_ins(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> ins)
Definition: program_generated.h:936
::flatbuffers::uoffset_t start_
Definition: program_generated.h:932
void add_type(tt::target::ttnn::EltwiseOpType type)
Definition: program_generated.h:933
EltwiseOp Table
Definition: program_generated.h:930
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:931
Definition: program_generated.h:965
static constexpr auto Create
Definition: program_generated.h:967
EltwiseOp type
Definition: program_generated.h:966
Definition: program_generated.h:1119
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1122
EmbeddingOp Table
Definition: program_generated.h:1120
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1121
::flatbuffers::Offset< EmbeddingOp > Finish()
Definition: program_generated.h:1136
void add_output(::flatbuffers::Offset< tt::target::TensorRef > output)
Definition: program_generated.h:1129
EmbeddingOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1132
void add_input(::flatbuffers::Offset< tt::target::TensorRef > input)
Definition: program_generated.h:1123
void add_weight(::flatbuffers::Offset< tt::target::TensorRef > weight)
Definition: program_generated.h:1126
Definition: program_generated.h:1155
EmbeddingOp type
Definition: program_generated.h:1156
static constexpr auto Create
Definition: program_generated.h:1157
Definition: program_generated.h:756
EmptyOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:778
void add_layout(tt::target::TensorLayout layout)
Definition: program_generated.h:766
void add_shape(::flatbuffers::Offset<::flatbuffers::Vector< int64_t >> shape)
Definition: program_generated.h:760
::flatbuffers::Offset< EmptyOp > Finish()
Definition: program_generated.h:782
void add_device(::flatbuffers::Offset< tt::target::DeviceRef > device)
Definition: program_generated.h:769
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:758
void add_memcfg(::flatbuffers::Offset< tt::target::MemoryConfigDesc > memcfg)
Definition: program_generated.h:772
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:775
void add_dtype(tt::target::DataType dtype)
Definition: program_generated.h:763
EmptyOp Table
Definition: program_generated.h:757
::flatbuffers::uoffset_t start_
Definition: program_generated.h:759
Definition: program_generated.h:807
static constexpr auto Create
Definition: program_generated.h:809
EmptyOp type
Definition: program_generated.h:808
Definition: binary_generated.h:30
const ::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef > > * outputs() const
Definition: program_generated.h:2249
tt::target::DataType dtype() const
Definition: program_generated.h:725
uint32_t padding_width() const
Definition: program_generated.h:1613
DeallocOpBuilder Builder
Definition: program_generated.h:1977
uint32_t in_channels() const
Definition: program_generated.h:1583
const tt::target::ttnn::ReshapeOp * type_as_ReshapeOp() const
Definition: program_generated.h:2084
const ::flatbuffers::Vector< uint32_t > * chip_ids() const
Definition: program_generated.h:350
const ::flatbuffers::String * name() const
Definition: program_generated.h:2243
uint32_t batch_size() const
Definition: program_generated.h:1589
const tt::target::ttnn::SoftmaxOp * type_as_SoftmaxOp() const
Definition: program_generated.h:2072
ReshapeOpBuilder Builder
Definition: program_generated.h:1392
const tt::target::TensorRef * output() const
Definition: program_generated.h:1104
const tt::target::TensorRef * in() const
Definition: program_generated.h:500
uint32_t input_width() const
Definition: program_generated.h:1595
const tt::target::ttnn::MaxPool2dOp * type_as_MaxPool2dOp() const
Definition: program_generated.h:2087
int32_t dim() const
Definition: program_generated.h:1322
const tt::target::ttnn::ReductionOp * type_as_ReductionOp() const
Definition: program_generated.h:2066
const tt::target::TensorRef * in1() const
Definition: program_generated.h:1485
const tt::target::ttnn::DeallocOp * type_as_DeallocOp() const
Definition: program_generated.h:2090
const tt::target::ttnn::EmbeddingOp * type_as_EmbeddingOp() const
Definition: program_generated.h:2069
const tt::target::ttnn::ConcatOp * type_as_ConcatOp() const
Definition: program_generated.h:2081
const tt::target::TensorRef * weight() const
Definition: program_generated.h:1101
const tt::target::TensorRef * in0() const
Definition: program_generated.h:429
const void * type() const
Definition: program_generated.h:2035
ProgramBuilder Builder
Definition: program_generated.h:2234
const tt::target::TensorRef * bias() const
Definition: program_generated.h:1574
bool ceil_mode() const
Definition: program_generated.h:1836
EltwiseOpBuilder Builder
Definition: program_generated.h:901
uint32_t dilation_height() const
Definition: program_generated.h:1616
const tt::target::ttnn::EmptyOp * type_as_EmptyOp() const
Definition: program_generated.h:2054
uint32_t channels() const
Definition: program_generated.h:1815
const ::flatbuffers::String * debug_info() const
Definition: program_generated.h:2093
int32_t dim1() const
Definition: program_generated.h:1247
const ::flatbuffers::Vector< int32_t > * shape() const
Definition: program_generated.h:1405
uint32_t kernel_height() const
Definition: program_generated.h:1598
uint32_t kernel_width() const
Definition: program_generated.h:1601
uint32_t stride_width() const
Definition: program_generated.h:1607
int32_t dim0() const
Definition: program_generated.h:1244
const tt::target::Dim2d * mesh() const
Definition: program_generated.h:347
uint32_t padding_height() const
Definition: program_generated.h:1610
const tt::target::ttnn::ToMemoryConfigOp * type_as_ToMemoryConfigOp() const
Definition: program_generated.h:2042
uint32_t dilation_width() const
Definition: program_generated.h:1619
const tt::target::ttnn::ToLayoutOp * type_as_ToLayoutOp() const
Definition: program_generated.h:2045
EmbeddingOpBuilder Builder
Definition: program_generated.h:1091
const tt::target::ttnn::FromDeviceOp * type_as_FromDeviceOp() const
Definition: program_generated.h:2051
const ::flatbuffers::Vector< int64_t > * shape() const
Definition: program_generated.h:722
GetDeviceOpBuilder Builder
Definition: program_generated.h:340
tt::target::TensorLayout layout() const
Definition: program_generated.h:503
const tt::target::ttnn::EltwiseOp * type_as_EltwiseOp() const
Definition: program_generated.h:2060
EmptyOpBuilder Builder
Definition: program_generated.h:712
ToDeviceOpBuilder Builder
Definition: program_generated.h:572
const tt::target::ttnn::TransposeOp * type_as_TransposeOp() const
Definition: program_generated.h:2075
bool keep_dim() const
Definition: program_generated.h:1005
uint32_t input_height() const
Definition: program_generated.h:1592
float fill_value() const
Definition: program_generated.h:842
const tt::target::ttnn::FullOp * type_as_FullOp() const
Definition: program_generated.h:2057
ConcatOpBuilder Builder
Definition: program_generated.h:1309
uint32_t stride_height() const
Definition: program_generated.h:1604
FullOpBuilder Builder
Definition: program_generated.h:832
int32_t dimension() const
Definition: program_generated.h:1174
const tt::target::MemoryConfigDesc * memcfg() const
Definition: program_generated.h:586
ToMemoryConfigOpBuilder Builder
Definition: program_generated.h:422
const tt::target::TensorRef * input() const
Definition: program_generated.h:1098
tt::target::ttnn::OpType type_type() const
Definition: program_generated.h:2032
Conv2dOpBuilder Builder
Definition: program_generated.h:1545
const tt::target::ttnn::MatmulOp * type_as_MatmulOp() const
Definition: program_generated.h:2063
const ::flatbuffers::Vector<::flatbuffers::Offset< tt::target::ttnn::Operation > > * operations() const
Definition: program_generated.h:2252
bool Verify(::flatbuffers::Verifier &verifier) const
Definition: program_generated.h:356
const tt::target::TensorRef * out() const
Definition: program_generated.h:435
const tt::target::ttnn::Conv2dOp * type_as_Conv2dOp() const
Definition: program_generated.h:2078
const ::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef > > * inputs() const
Definition: program_generated.h:1316
tt::target::ttnn::EltwiseOpType type() const
Definition: program_generated.h:908
SoftmaxOpBuilder Builder
Definition: program_generated.h:1161
MaxPool2dOpBuilder Builder
Definition: program_generated.h:1777
const ::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef > > * ins() const
Definition: program_generated.h:911
ReductionOpBuilder Builder
Definition: program_generated.h:984
uint32_t groups() const
Definition: program_generated.h:1622
OperationBuilder Builder
Definition: program_generated.h:2025
TransposeOpBuilder Builder
Definition: program_generated.h:1230
tt::target::ttnn::ReductionOpType type() const
Definition: program_generated.h:993
uint32_t out_channels() const
Definition: program_generated.h:1586
ToLayoutOpBuilder Builder
Definition: program_generated.h:492
const tt::target::DeviceRef * out() const
Definition: program_generated.h:353
const tt::target::DebugInfo * debug_info() const
Definition: program_generated.h:2255
const ::flatbuffers::Vector< int32_t > * dim_arg() const
Definition: program_generated.h:1002
const tt::target::DeviceRef * device() const
Definition: program_generated.h:432
FromDeviceOpBuilder Builder
Definition: program_generated.h:653
MatmulOpBuilder Builder
Definition: program_generated.h:1475
const tt::target::ttnn::ToDeviceOp * type_as_ToDeviceOp() const
Definition: program_generated.h:2048
const tt::target::ttnn::GetDeviceOp * type_as_GetDeviceOp() const
Definition: program_generated.h:2039
Definition: program_generated.h:675
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:677
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:679
::flatbuffers::uoffset_t start_
Definition: program_generated.h:678
FromDeviceOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:685
FromDeviceOp Table
Definition: program_generated.h:676
::flatbuffers::Offset< FromDeviceOp > Finish()
Definition: program_generated.h:689
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:682
Definition: program_generated.h:706
static constexpr auto Create
Definition: program_generated.h:708
FromDeviceOp type
Definition: program_generated.h:707
Definition: program_generated.h:859
void add_device(::flatbuffers::Offset< tt::target::DeviceRef > device)
Definition: program_generated.h:863
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:861
::flatbuffers::Offset< FullOp > Finish()
Definition: program_generated.h:876
void add_fill_value(float fill_value)
Definition: program_generated.h:866
FullOp Table
Definition: program_generated.h:860
FullOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:872
::flatbuffers::uoffset_t start_
Definition: program_generated.h:862
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:869
Definition: program_generated.h:895
FullOp type
Definition: program_generated.h:896
static constexpr auto Create
Definition: program_generated.h:897
Definition: program_generated.h:367
GetDeviceOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:380
::flatbuffers::uoffset_t start_
Definition: program_generated.h:370
::flatbuffers::Offset< GetDeviceOp > Finish()
Definition: program_generated.h:384
void add_chip_ids(::flatbuffers::Offset<::flatbuffers::Vector< uint32_t >> chip_ids)
Definition: program_generated.h:374
void add_mesh(const tt::target::Dim2d *mesh)
Definition: program_generated.h:371
GetDeviceOp Table
Definition: program_generated.h:368
void add_out(::flatbuffers::Offset< tt::target::DeviceRef > out)
Definition: program_generated.h:377
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:369
Definition: program_generated.h:403
GetDeviceOp type
Definition: program_generated.h:404
static constexpr auto Create
Definition: program_generated.h:405
Definition: program_generated.h:1503
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1506
::flatbuffers::Offset< MatmulOp > Finish()
Definition: program_generated.h:1520
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1513
MatmulOp Table
Definition: program_generated.h:1504
void add_in1(::flatbuffers::Offset< tt::target::TensorRef > in1)
Definition: program_generated.h:1510
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1505
void add_in0(::flatbuffers::Offset< tt::target::TensorRef > in0)
Definition: program_generated.h:1507
MatmulOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1516
Definition: program_generated.h:1539
static constexpr auto Create
Definition: program_generated.h:1541
MatmulOp type
Definition: program_generated.h:1540
Definition: program_generated.h:1870
void add_input_width(uint32_t input_width)
Definition: program_generated.h:1889
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1873
void add_input_height(uint32_t input_height)
Definition: program_generated.h:1886
MaxPool2dOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1922
void add_stride_height(uint32_t stride_height)
Definition: program_generated.h:1901
void add_ceil_mode(bool ceil_mode)
Definition: program_generated.h:1913
void add_dilation_width(uint32_t dilation_width)
Definition: program_generated.h:1910
void add_padding_height(uint32_t padding_height)
Definition: program_generated.h:1916
void add_kernel_height(uint32_t kernel_height)
Definition: program_generated.h:1895
MaxPool2dOp Table
Definition: program_generated.h:1871
void add_dilation_height(uint32_t dilation_height)
Definition: program_generated.h:1907
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:1874
void add_channels(uint32_t channels)
Definition: program_generated.h:1892
void add_padding_width(uint32_t padding_width)
Definition: program_generated.h:1919
::flatbuffers::Offset< MaxPool2dOp > Finish()
Definition: program_generated.h:1926
void add_kernel_width(uint32_t kernel_width)
Definition: program_generated.h:1898
void add_stride_width(uint32_t stride_width)
Definition: program_generated.h:1904
void add_batch_size(uint32_t batch_size)
Definition: program_generated.h:1883
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1877
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1872
void add_device(::flatbuffers::Offset< tt::target::DeviceRef > device)
Definition: program_generated.h:1880
Definition: program_generated.h:1971
MaxPool2dOp type
Definition: program_generated.h:1972
static constexpr auto Create
Definition: program_generated.h:1973
Definition: program_generated.h:260
static const OpType enum_value
Definition: program_generated.h:261
Definition: program_generated.h:2179
void add_type(::flatbuffers::Offset< void > type)
Definition: program_generated.h:2186
OperationBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:2192
::flatbuffers::Offset< Operation > Finish()
Definition: program_generated.h:2196
Operation Table
Definition: program_generated.h:2180
void add_debug_info(::flatbuffers::Offset<::flatbuffers::String > debug_info)
Definition: program_generated.h:2189
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:2181
::flatbuffers::uoffset_t start_
Definition: program_generated.h:2182
void add_type_type(tt::target::ttnn::OpType type_type)
Definition: program_generated.h:2183
Definition: program_generated.h:2215
static constexpr auto Create
Definition: program_generated.h:2217
Operation type
Definition: program_generated.h:2216
Definition: program_generated.h:2277
Program Table
Definition: program_generated.h:2278
::flatbuffers::uoffset_t start_
Definition: program_generated.h:2280
void add_name(::flatbuffers::Offset<::flatbuffers::String > name)
Definition: program_generated.h:2281
void add_debug_info(::flatbuffers::Offset< tt::target::DebugInfo > debug_info)
Definition: program_generated.h:2293
void add_inputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> inputs)
Definition: program_generated.h:2284
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:2279
void add_outputs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::TensorRef >>> outputs)
Definition: program_generated.h:2287
::flatbuffers::Offset< Program > Finish()
Definition: program_generated.h:2300
ProgramBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:2296
void add_operations(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::ttnn::Operation >>> operations)
Definition: program_generated.h:2290
Definition: program_generated.h:2323
static constexpr auto Create
Definition: program_generated.h:2325
Program type
Definition: program_generated.h:2324
Definition: program_generated.h:1022
ReductionOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1041
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:1029
void add_dim_arg(::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> dim_arg)
Definition: program_generated.h:1035
::flatbuffers::Offset< ReductionOp > Finish()
Definition: program_generated.h:1045
void add_type(tt::target::ttnn::ReductionOpType type)
Definition: program_generated.h:1026
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1024
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1025
ReductionOp Table
Definition: program_generated.h:1023
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1032
void add_keep_dim(bool keep_dim)
Definition: program_generated.h:1038
Definition: program_generated.h:1068
ReductionOp type
Definition: program_generated.h:1069
static constexpr auto Create
Definition: program_generated.h:1070
Definition: program_generated.h:1420
void add_shape(::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> shape)
Definition: program_generated.h:1430
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1423
ReshapeOp Table
Definition: program_generated.h:1421
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1422
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:1424
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1427
::flatbuffers::Offset< ReshapeOp > Finish()
Definition: program_generated.h:1437
ReshapeOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1433
Definition: program_generated.h:1456
static constexpr auto Create
Definition: program_generated.h:1458
ReshapeOp type
Definition: program_generated.h:1457
Definition: program_generated.h:1188
void add_dimension(int32_t dimension)
Definition: program_generated.h:1198
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1191
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:1192
SoftmaxOp Table
Definition: program_generated.h:1189
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1190
::flatbuffers::Offset< SoftmaxOp > Finish()
Definition: program_generated.h:1205
SoftmaxOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1201
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1195
Definition: program_generated.h:1224
static constexpr auto Create
Definition: program_generated.h:1226
SoftmaxOp type
Definition: program_generated.h:1225
Definition: program_generated.h:606
ToDeviceOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:622
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:619
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:610
void add_device(::flatbuffers::Offset< tt::target::DeviceRef > device)
Definition: program_generated.h:613
::flatbuffers::Offset< ToDeviceOp > Finish()
Definition: program_generated.h:626
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:608
ToDeviceOp Table
Definition: program_generated.h:607
::flatbuffers::uoffset_t start_
Definition: program_generated.h:609
void add_memcfg(::flatbuffers::Offset< tt::target::MemoryConfigDesc > memcfg)
Definition: program_generated.h:616
Definition: program_generated.h:647
ToDeviceOp type
Definition: program_generated.h:648
static constexpr auto Create
Definition: program_generated.h:649
Definition: program_generated.h:525
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:527
ToLayoutOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:541
ToLayoutOp Table
Definition: program_generated.h:526
::flatbuffers::Offset< ToLayoutOp > Finish()
Definition: program_generated.h:545
void add_layout(tt::target::TensorLayout layout)
Definition: program_generated.h:532
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:529
void add_device(::flatbuffers::Offset< tt::target::DeviceRef > device)
Definition: program_generated.h:535
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:538
::flatbuffers::uoffset_t start_
Definition: program_generated.h:528
Definition: program_generated.h:566
static constexpr auto Create
Definition: program_generated.h:568
ToLayoutOp type
Definition: program_generated.h:567
Definition: program_generated.h:450
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:460
::flatbuffers::uoffset_t start_
Definition: program_generated.h:453
ToMemoryConfigOp Table
Definition: program_generated.h:451
void add_in0(::flatbuffers::Offset< tt::target::TensorRef > in0)
Definition: program_generated.h:454
ToMemoryConfigOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:463
void add_device(::flatbuffers::Offset< tt::target::DeviceRef > device)
Definition: program_generated.h:457
::flatbuffers::Offset< ToMemoryConfigOp > Finish()
Definition: program_generated.h:467
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:452
Definition: program_generated.h:486
ToMemoryConfigOp type
Definition: program_generated.h:487
static constexpr auto Create
Definition: program_generated.h:488
Definition: program_generated.h:1262
::flatbuffers::FlatBufferBuilder & fbb_
Definition: program_generated.h:1264
void add_out(::flatbuffers::Offset< tt::target::TensorRef > out)
Definition: program_generated.h:1269
void add_dim0(int32_t dim0)
Definition: program_generated.h:1272
::flatbuffers::Offset< TransposeOp > Finish()
Definition: program_generated.h:1282
TransposeOp Table
Definition: program_generated.h:1263
TransposeOpBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: program_generated.h:1278
::flatbuffers::uoffset_t start_
Definition: program_generated.h:1265
void add_dim1(int32_t dim1)
Definition: program_generated.h:1275
void add_in(::flatbuffers::Offset< tt::target::TensorRef > in)
Definition: program_generated.h:1266
Definition: program_generated.h:1303
TransposeOp type
Definition: program_generated.h:1304
static constexpr auto Create
Definition: program_generated.h:1305