TT-MLIR
types_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_TYPES_TT_TARGET_TTNN_H_
5 #define FLATBUFFERS_GENERATED_TYPES_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 
17 
18 namespace tt {
19 namespace target {
20 namespace ttnn {
21 
22 struct CoreCoord;
23 
24 struct CoreRange;
25 
26 struct CoreRangeSet;
27 struct CoreRangeSetBuilder;
28 
29 struct ReplicateTensor;
30 struct ReplicateTensorBuilder;
31 
32 struct ShardTensor;
33 struct ShardTensorBuilder;
34 
35 struct ShardTensor2D;
36 struct ShardTensor2DBuilder;
37 
38 struct AllGatherTensor;
39 struct AllGatherTensorBuilder;
40 
41 struct DistributionStrategy;
42 struct DistributionStrategyBuilder;
43 
44 struct ShardSpec;
45 struct ShardSpecBuilder;
46 
47 struct MemoryConfig;
48 struct MemoryConfigBuilder;
49 
50 struct MemoryDesc;
51 struct MemoryDescBuilder;
52 
53 struct LayoutDesc;
54 struct LayoutDescBuilder;
55 
56 struct TensorDesc;
57 struct TensorDescBuilder;
58 
59 struct TensorRef;
60 struct TensorRefBuilder;
61 
62 enum class TensorMemoryLayout : uint16_t {
63  Interleaved = 0,
64  SingleBank = 1,
65  HeightSharded = 2,
66  WidthSharded = 3,
67  BlockSharded = 4,
68  MIN = Interleaved,
70 };
71 
73  static const TensorMemoryLayout values[] = {
79  };
80  return values;
81 }
82 
83 inline const char * const *EnumNamesTensorMemoryLayout() {
84  static const char * const names[6] = {
85  "Interleaved",
86  "SingleBank",
87  "HeightSharded",
88  "WidthSharded",
89  "BlockSharded",
90  nullptr
91  };
92  return names;
93 }
94 
96  if (::flatbuffers::IsOutRange(e, TensorMemoryLayout::Interleaved, TensorMemoryLayout::BlockSharded)) return "";
97  const size_t index = static_cast<size_t>(e);
98  return EnumNamesTensorMemoryLayout()[index];
99 }
100 
101 enum class StorageType : uint16_t {
102  Owned = 0,
103  Device = 1,
104  Borrowed = 2,
105  MultiDevice = 3,
106  MultiDeviceHost = 4,
107  MIN = Owned,
109 };
110 
111 inline const StorageType (&EnumValuesStorageType())[5] {
112  static const StorageType values[] = {
118  };
119  return values;
120 }
121 
122 inline const char * const *EnumNamesStorageType() {
123  static const char * const names[6] = {
124  "Owned",
125  "Device",
126  "Borrowed",
127  "MultiDevice",
128  "MultiDeviceHost",
129  nullptr
130  };
131  return names;
132 }
133 
134 inline const char *EnumNameStorageType(StorageType e) {
135  if (::flatbuffers::IsOutRange(e, StorageType::Owned, StorageType::MultiDeviceHost)) return "";
136  const size_t index = static_cast<size_t>(e);
137  return EnumNamesStorageType()[index];
138 }
139 
140 enum class MeshShardDirection : uint32_t {
141  FullToShardShape = 0,
142  ShardToFullShape = 1,
145 };
146 
148  static const MeshShardDirection values[] = {
151  };
152  return values;
153 }
154 
155 inline const char * const *EnumNamesMeshShardDirection() {
156  static const char * const names[3] = {
157  "FullToShardShape",
158  "ShardToFullShape",
159  nullptr
160  };
161  return names;
162 }
163 
165  if (::flatbuffers::IsOutRange(e, MeshShardDirection::FullToShardShape, MeshShardDirection::ShardToFullShape)) return "";
166  const size_t index = static_cast<size_t>(e);
167  return EnumNamesMeshShardDirection()[index];
168 }
169 
170 enum class MeshShardType : uint32_t {
171  Identity = 0,
172  Replicate = 1,
173  Maximal = 2,
174  Devices = 3,
175  MIN = Identity,
176  MAX = Devices
177 };
178 
180  static const MeshShardType values[] = {
185  };
186  return values;
187 }
188 
189 inline const char * const *EnumNamesMeshShardType() {
190  static const char * const names[5] = {
191  "Identity",
192  "Replicate",
193  "Maximal",
194  "Devices",
195  nullptr
196  };
197  return names;
198 }
199 
200 inline const char *EnumNameMeshShardType(MeshShardType e) {
201  if (::flatbuffers::IsOutRange(e, MeshShardType::Identity, MeshShardType::Devices)) return "";
202  const size_t index = static_cast<size_t>(e);
203  return EnumNamesMeshShardType()[index];
204 }
205 
206 enum class DistributedTensorConfig : uint8_t {
207  NONE = 0,
208  ReplicateTensor = 1,
209  ShardTensor = 2,
210  ShardTensor2D = 3,
211  AllGatherTensor = 4,
212  MIN = NONE,
214 };
215 
217  static const DistributedTensorConfig values[] = {
223  };
224  return values;
225 }
226 
227 inline const char * const *EnumNamesDistributedTensorConfig() {
228  static const char * const names[6] = {
229  "NONE",
230  "ReplicateTensor",
231  "ShardTensor",
232  "ShardTensor2D",
233  "AllGatherTensor",
234  nullptr
235  };
236  return names;
237 }
238 
240  if (::flatbuffers::IsOutRange(e, DistributedTensorConfig::NONE, DistributedTensorConfig::AllGatherTensor)) return "";
241  const size_t index = static_cast<size_t>(e);
242  return EnumNamesDistributedTensorConfig()[index];
243 }
244 
245 template<typename T> struct DistributedTensorConfigTraits {
247 };
248 
249 template<> struct DistributedTensorConfigTraits<tt::target::ttnn::ReplicateTensor> {
251 };
252 
253 template<> struct DistributedTensorConfigTraits<tt::target::ttnn::ShardTensor> {
255 };
256 
257 template<> struct DistributedTensorConfigTraits<tt::target::ttnn::ShardTensor2D> {
259 };
260 
261 template<> struct DistributedTensorConfigTraits<tt::target::ttnn::AllGatherTensor> {
263 };
264 
265 bool VerifyDistributedTensorConfig(::flatbuffers::Verifier &verifier, const void *obj, DistributedTensorConfig type);
266 bool VerifyDistributedTensorConfigVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<DistributedTensorConfig> *types);
267 
269  private:
270  uint64_t x_;
271  uint64_t y_;
272 
273  public:
274  struct Traits;
275  CoreCoord()
276  : x_(0),
277  y_(0) {
278  }
279  CoreCoord(uint64_t _x, uint64_t _y)
280  : x_(::flatbuffers::EndianScalar(_x)),
281  y_(::flatbuffers::EndianScalar(_y)) {
282  }
283  uint64_t x() const {
284  return ::flatbuffers::EndianScalar(x_);
285  }
286  uint64_t y() const {
287  return ::flatbuffers::EndianScalar(y_);
288  }
289 };
290 FLATBUFFERS_STRUCT_END(CoreCoord, 16);
291 
293  using type = CoreCoord;
294 };
295 
297  private:
298  tt::target::ttnn::CoreCoord start_coord_;
299  tt::target::ttnn::CoreCoord end_coord_;
300 
301  public:
302  struct Traits;
303  CoreRange()
304  : start_coord_(),
305  end_coord_() {
306  }
307  CoreRange(const tt::target::ttnn::CoreCoord &_start_coord, const tt::target::ttnn::CoreCoord &_end_coord)
308  : start_coord_(_start_coord),
309  end_coord_(_end_coord) {
310  }
311  const tt::target::ttnn::CoreCoord &start_coord() const {
312  return start_coord_;
313  }
314  const tt::target::ttnn::CoreCoord &end_coord() const {
315  return end_coord_;
316  }
317 };
318 FLATBUFFERS_STRUCT_END(CoreRange, 32);
319 
321  using type = CoreRange;
322 };
323 
324 struct CoreRangeSet FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
326  struct Traits;
327  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
328  VT_CORE_RANGES = 4
329  };
330  const ::flatbuffers::Vector<const tt::target::ttnn::CoreRange *> *core_ranges() const {
331  return GetPointer<const ::flatbuffers::Vector<const tt::target::ttnn::CoreRange *> *>(VT_CORE_RANGES);
332  }
333  bool Verify(::flatbuffers::Verifier &verifier) const {
334  return VerifyTableStart(verifier) &&
335  VerifyOffset(verifier, VT_CORE_RANGES) &&
336  verifier.VerifyVector(core_ranges()) &&
337  verifier.EndTable();
338  }
339 };
340 
342  typedef CoreRangeSet Table;
343  ::flatbuffers::FlatBufferBuilder &fbb_;
344  ::flatbuffers::uoffset_t start_;
345  void add_core_ranges(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::ttnn::CoreRange *>> core_ranges) {
346  fbb_.AddOffset(CoreRangeSet::VT_CORE_RANGES, core_ranges);
347  }
348  explicit CoreRangeSetBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
349  : fbb_(_fbb) {
350  start_ = fbb_.StartTable();
351  }
352  ::flatbuffers::Offset<CoreRangeSet> Finish() {
353  const auto end = fbb_.EndTable(start_);
354  auto o = ::flatbuffers::Offset<CoreRangeSet>(end);
355  return o;
356  }
357 };
358 
359 inline ::flatbuffers::Offset<CoreRangeSet> CreateCoreRangeSet(
360  ::flatbuffers::FlatBufferBuilder &_fbb,
361  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::ttnn::CoreRange *>> core_ranges = 0) {
362  CoreRangeSetBuilder builder_(_fbb);
363  builder_.add_core_ranges(core_ranges);
364  return builder_.Finish();
365 }
366 
368  using type = CoreRangeSet;
369  static auto constexpr Create = CreateCoreRangeSet;
370 };
371 
372 inline ::flatbuffers::Offset<CoreRangeSet> CreateCoreRangeSetDirect(
373  ::flatbuffers::FlatBufferBuilder &_fbb,
374  const std::vector<tt::target::ttnn::CoreRange> *core_ranges = nullptr) {
375  auto core_ranges__ = core_ranges ? _fbb.CreateVectorOfStructs<tt::target::ttnn::CoreRange>(*core_ranges) : 0;
377  _fbb,
378  core_ranges__);
379 }
380 
381 struct ReplicateTensor FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
383  struct Traits;
384  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
385  VT_REPLICATION_FACTOR = 4
386  };
387  uint32_t replication_factor() const {
388  return GetField<uint32_t>(VT_REPLICATION_FACTOR, 0);
389  }
390  bool Verify(::flatbuffers::Verifier &verifier) const {
391  return VerifyTableStart(verifier) &&
392  VerifyField<uint32_t>(verifier, VT_REPLICATION_FACTOR, 4) &&
393  verifier.EndTable();
394  }
395 };
396 
399  ::flatbuffers::FlatBufferBuilder &fbb_;
400  ::flatbuffers::uoffset_t start_;
401  void add_replication_factor(uint32_t replication_factor) {
402  fbb_.AddElement<uint32_t>(ReplicateTensor::VT_REPLICATION_FACTOR, replication_factor, 0);
403  }
404  explicit ReplicateTensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
405  : fbb_(_fbb) {
406  start_ = fbb_.StartTable();
407  }
408  ::flatbuffers::Offset<ReplicateTensor> Finish() {
409  const auto end = fbb_.EndTable(start_);
410  auto o = ::flatbuffers::Offset<ReplicateTensor>(end);
411  return o;
412  }
413 };
414 
415 inline ::flatbuffers::Offset<ReplicateTensor> CreateReplicateTensor(
416  ::flatbuffers::FlatBufferBuilder &_fbb,
417  uint32_t replication_factor = 0) {
418  ReplicateTensorBuilder builder_(_fbb);
419  builder_.add_replication_factor(replication_factor);
420  return builder_.Finish();
421 }
422 
425  static auto constexpr Create = CreateReplicateTensor;
426 };
427 
428 struct ShardTensor FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
430  struct Traits;
431  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
432  VT_SHARD_DIM = 4
433  };
434  uint32_t shard_dim() const {
435  return GetField<uint32_t>(VT_SHARD_DIM, 0);
436  }
437  bool Verify(::flatbuffers::Verifier &verifier) const {
438  return VerifyTableStart(verifier) &&
439  VerifyField<uint32_t>(verifier, VT_SHARD_DIM, 4) &&
440  verifier.EndTable();
441  }
442 };
443 
446  ::flatbuffers::FlatBufferBuilder &fbb_;
447  ::flatbuffers::uoffset_t start_;
448  void add_shard_dim(uint32_t shard_dim) {
449  fbb_.AddElement<uint32_t>(ShardTensor::VT_SHARD_DIM, shard_dim, 0);
450  }
451  explicit ShardTensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
452  : fbb_(_fbb) {
453  start_ = fbb_.StartTable();
454  }
455  ::flatbuffers::Offset<ShardTensor> Finish() {
456  const auto end = fbb_.EndTable(start_);
457  auto o = ::flatbuffers::Offset<ShardTensor>(end);
458  return o;
459  }
460 };
461 
462 inline ::flatbuffers::Offset<ShardTensor> CreateShardTensor(
463  ::flatbuffers::FlatBufferBuilder &_fbb,
464  uint32_t shard_dim = 0) {
465  ShardTensorBuilder builder_(_fbb);
466  builder_.add_shard_dim(shard_dim);
467  return builder_.Finish();
468 }
469 
471  using type = ShardTensor;
472  static auto constexpr Create = CreateShardTensor;
473 };
474 
475 struct ShardTensor2D FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
477  struct Traits;
478  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
479  VT_SHARD_MESH = 4
480  };
481  const tt::target::Dim2d *shard_mesh() const {
482  return GetStruct<const tt::target::Dim2d *>(VT_SHARD_MESH);
483  }
484  bool Verify(::flatbuffers::Verifier &verifier) const {
485  return VerifyTableStart(verifier) &&
486  VerifyField<tt::target::Dim2d>(verifier, VT_SHARD_MESH, 4) &&
487  verifier.EndTable();
488  }
489 };
490 
493  ::flatbuffers::FlatBufferBuilder &fbb_;
494  ::flatbuffers::uoffset_t start_;
495  void add_shard_mesh(const tt::target::Dim2d *shard_mesh) {
496  fbb_.AddStruct(ShardTensor2D::VT_SHARD_MESH, shard_mesh);
497  }
498  explicit ShardTensor2DBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
499  : fbb_(_fbb) {
500  start_ = fbb_.StartTable();
501  }
502  ::flatbuffers::Offset<ShardTensor2D> Finish() {
503  const auto end = fbb_.EndTable(start_);
504  auto o = ::flatbuffers::Offset<ShardTensor2D>(end);
505  return o;
506  }
507 };
508 
509 inline ::flatbuffers::Offset<ShardTensor2D> CreateShardTensor2D(
510  ::flatbuffers::FlatBufferBuilder &_fbb,
511  const tt::target::Dim2d *shard_mesh = nullptr) {
512  ShardTensor2DBuilder builder_(_fbb);
513  builder_.add_shard_mesh(shard_mesh);
514  return builder_.Finish();
515 }
516 
519  static auto constexpr Create = CreateShardTensor2D;
520 };
521 
522 struct AllGatherTensor FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
524  struct Traits;
525  bool Verify(::flatbuffers::Verifier &verifier) const {
526  return VerifyTableStart(verifier) &&
527  verifier.EndTable();
528  }
529 };
530 
533  ::flatbuffers::FlatBufferBuilder &fbb_;
534  ::flatbuffers::uoffset_t start_;
535  explicit AllGatherTensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
536  : fbb_(_fbb) {
537  start_ = fbb_.StartTable();
538  }
539  ::flatbuffers::Offset<AllGatherTensor> Finish() {
540  const auto end = fbb_.EndTable(start_);
541  auto o = ::flatbuffers::Offset<AllGatherTensor>(end);
542  return o;
543  }
544 };
545 
546 inline ::flatbuffers::Offset<AllGatherTensor> CreateAllGatherTensor(
547  ::flatbuffers::FlatBufferBuilder &_fbb) {
548  AllGatherTensorBuilder builder_(_fbb);
549  return builder_.Finish();
550 }
551 
554  static auto constexpr Create = CreateAllGatherTensor;
555 };
556 
557 struct DistributionStrategy FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
559  struct Traits;
560  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
562  VT_STRATEGY = 6
563  };
565  return static_cast<tt::target::ttnn::DistributedTensorConfig>(GetField<uint8_t>(VT_STRATEGY_TYPE, 0));
566  }
567  const void *strategy() const {
568  return GetPointer<const void *>(VT_STRATEGY);
569  }
570  template<typename T> const T *strategy_as() const;
571  const tt::target::ttnn::ReplicateTensor *strategy_as_ReplicateTensor() const {
572  return strategy_type() == tt::target::ttnn::DistributedTensorConfig::ReplicateTensor ? static_cast<const tt::target::ttnn::ReplicateTensor *>(strategy()) : nullptr;
573  }
574  const tt::target::ttnn::ShardTensor *strategy_as_ShardTensor() const {
575  return strategy_type() == tt::target::ttnn::DistributedTensorConfig::ShardTensor ? static_cast<const tt::target::ttnn::ShardTensor *>(strategy()) : nullptr;
576  }
577  const tt::target::ttnn::ShardTensor2D *strategy_as_ShardTensor2D() const {
578  return strategy_type() == tt::target::ttnn::DistributedTensorConfig::ShardTensor2D ? static_cast<const tt::target::ttnn::ShardTensor2D *>(strategy()) : nullptr;
579  }
580  const tt::target::ttnn::AllGatherTensor *strategy_as_AllGatherTensor() const {
581  return strategy_type() == tt::target::ttnn::DistributedTensorConfig::AllGatherTensor ? static_cast<const tt::target::ttnn::AllGatherTensor *>(strategy()) : nullptr;
582  }
583  bool Verify(::flatbuffers::Verifier &verifier) const {
584  return VerifyTableStart(verifier) &&
585  VerifyField<uint8_t>(verifier, VT_STRATEGY_TYPE, 1) &&
586  VerifyOffset(verifier, VT_STRATEGY) &&
587  VerifyDistributedTensorConfig(verifier, strategy(), strategy_type()) &&
588  verifier.EndTable();
589  }
590 };
591 
592 template<> inline const tt::target::ttnn::ReplicateTensor *DistributionStrategy::strategy_as<tt::target::ttnn::ReplicateTensor>() const {
593  return strategy_as_ReplicateTensor();
594 }
595 
596 template<> inline const tt::target::ttnn::ShardTensor *DistributionStrategy::strategy_as<tt::target::ttnn::ShardTensor>() const {
597  return strategy_as_ShardTensor();
598 }
599 
600 template<> inline const tt::target::ttnn::ShardTensor2D *DistributionStrategy::strategy_as<tt::target::ttnn::ShardTensor2D>() const {
601  return strategy_as_ShardTensor2D();
602 }
603 
604 template<> inline const tt::target::ttnn::AllGatherTensor *DistributionStrategy::strategy_as<tt::target::ttnn::AllGatherTensor>() const {
605  return strategy_as_AllGatherTensor();
606 }
607 
609  typedef DistributionStrategy Table;
610  ::flatbuffers::FlatBufferBuilder &fbb_;
611  ::flatbuffers::uoffset_t start_;
613  fbb_.AddElement<uint8_t>(DistributionStrategy::VT_STRATEGY_TYPE, static_cast<uint8_t>(strategy_type), 0);
614  }
615  void add_strategy(::flatbuffers::Offset<void> strategy) {
616  fbb_.AddOffset(DistributionStrategy::VT_STRATEGY, strategy);
617  }
618  explicit DistributionStrategyBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
619  : fbb_(_fbb) {
620  start_ = fbb_.StartTable();
621  }
622  ::flatbuffers::Offset<DistributionStrategy> Finish() {
623  const auto end = fbb_.EndTable(start_);
624  auto o = ::flatbuffers::Offset<DistributionStrategy>(end);
625  return o;
626  }
627 };
628 
629 inline ::flatbuffers::Offset<DistributionStrategy> CreateDistributionStrategy(
630  ::flatbuffers::FlatBufferBuilder &_fbb,
632  ::flatbuffers::Offset<void> strategy = 0) {
633  DistributionStrategyBuilder builder_(_fbb);
634  builder_.add_strategy(strategy);
635  builder_.add_strategy_type(strategy_type);
636  return builder_.Finish();
637 }
638 
640  using type = DistributionStrategy;
641  static auto constexpr Create = CreateDistributionStrategy;
642 };
643 
644 struct ShardSpec FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
646  struct Traits;
647  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
648  VT_GRID = 4,
649  VT_SHARD_SHAPE = 6
650  };
651  const ::flatbuffers::Vector<const tt::target::Dim2dRange *> *grid() const {
652  return GetPointer<const ::flatbuffers::Vector<const tt::target::Dim2dRange *> *>(VT_GRID);
653  }
654  const ::flatbuffers::Vector<int32_t> *shard_shape() const {
655  return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_SHARD_SHAPE);
656  }
657  bool Verify(::flatbuffers::Verifier &verifier) const {
658  return VerifyTableStart(verifier) &&
659  VerifyOffset(verifier, VT_GRID) &&
660  verifier.VerifyVector(grid()) &&
661  VerifyOffset(verifier, VT_SHARD_SHAPE) &&
662  verifier.VerifyVector(shard_shape()) &&
663  verifier.EndTable();
664  }
665 };
666 
668  typedef ShardSpec Table;
669  ::flatbuffers::FlatBufferBuilder &fbb_;
670  ::flatbuffers::uoffset_t start_;
671  void add_grid(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2dRange *>> grid) {
672  fbb_.AddOffset(ShardSpec::VT_GRID, grid);
673  }
674  void add_shard_shape(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shard_shape) {
675  fbb_.AddOffset(ShardSpec::VT_SHARD_SHAPE, shard_shape);
676  }
677  explicit ShardSpecBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
678  : fbb_(_fbb) {
679  start_ = fbb_.StartTable();
680  }
681  ::flatbuffers::Offset<ShardSpec> Finish() {
682  const auto end = fbb_.EndTable(start_);
683  auto o = ::flatbuffers::Offset<ShardSpec>(end);
684  return o;
685  }
686 };
687 
688 inline ::flatbuffers::Offset<ShardSpec> CreateShardSpec(
689  ::flatbuffers::FlatBufferBuilder &_fbb,
690  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2dRange *>> grid = 0,
691  ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shard_shape = 0) {
692  ShardSpecBuilder builder_(_fbb);
693  builder_.add_shard_shape(shard_shape);
694  builder_.add_grid(grid);
695  return builder_.Finish();
696 }
697 
699  using type = ShardSpec;
700  static auto constexpr Create = CreateShardSpec;
701 };
702 
703 inline ::flatbuffers::Offset<ShardSpec> CreateShardSpecDirect(
704  ::flatbuffers::FlatBufferBuilder &_fbb,
705  const std::vector<tt::target::Dim2dRange> *grid = nullptr,
706  const std::vector<int32_t> *shard_shape = nullptr) {
707  auto grid__ = grid ? _fbb.CreateVectorOfStructs<tt::target::Dim2dRange>(*grid) : 0;
708  auto shard_shape__ = shard_shape ? _fbb.CreateVector<int32_t>(*shard_shape) : 0;
710  _fbb,
711  grid__,
712  shard_shape__);
713 }
714 
715 struct MemoryConfig FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
717  struct Traits;
718  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
721  VT_SHARD_SPEC = 8
722  };
724  return static_cast<tt::target::ttnn::TensorMemoryLayout>(GetField<uint16_t>(VT_TENSOR_MEMORY_LAYOUT, 0));
725  }
727  return static_cast<tt::target::BufferType>(GetField<uint16_t>(VT_BUFFER_TYPE, 0));
728  }
729  const tt::target::ttnn::ShardSpec *shard_spec() const {
730  return GetPointer<const tt::target::ttnn::ShardSpec *>(VT_SHARD_SPEC);
731  }
732  bool Verify(::flatbuffers::Verifier &verifier) const {
733  return VerifyTableStart(verifier) &&
734  VerifyField<uint16_t>(verifier, VT_TENSOR_MEMORY_LAYOUT, 2) &&
735  VerifyField<uint16_t>(verifier, VT_BUFFER_TYPE, 2) &&
736  VerifyOffset(verifier, VT_SHARD_SPEC) &&
737  verifier.VerifyTable(shard_spec()) &&
738  verifier.EndTable();
739  }
740 };
741 
743  typedef MemoryConfig Table;
744  ::flatbuffers::FlatBufferBuilder &fbb_;
745  ::flatbuffers::uoffset_t start_;
747  fbb_.AddElement<uint16_t>(MemoryConfig::VT_TENSOR_MEMORY_LAYOUT, static_cast<uint16_t>(tensor_memory_layout), 0);
748  }
750  fbb_.AddElement<uint16_t>(MemoryConfig::VT_BUFFER_TYPE, static_cast<uint16_t>(buffer_type), 0);
751  }
752  void add_shard_spec(::flatbuffers::Offset<tt::target::ttnn::ShardSpec> shard_spec) {
753  fbb_.AddOffset(MemoryConfig::VT_SHARD_SPEC, shard_spec);
754  }
755  explicit MemoryConfigBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
756  : fbb_(_fbb) {
757  start_ = fbb_.StartTable();
758  }
759  ::flatbuffers::Offset<MemoryConfig> Finish() {
760  const auto end = fbb_.EndTable(start_);
761  auto o = ::flatbuffers::Offset<MemoryConfig>(end);
762  return o;
763  }
764 };
765 
766 inline ::flatbuffers::Offset<MemoryConfig> CreateMemoryConfig(
767  ::flatbuffers::FlatBufferBuilder &_fbb,
770  ::flatbuffers::Offset<tt::target::ttnn::ShardSpec> shard_spec = 0) {
771  MemoryConfigBuilder builder_(_fbb);
772  builder_.add_shard_spec(shard_spec);
773  builder_.add_buffer_type(buffer_type);
774  builder_.add_tensor_memory_layout(tensor_memory_layout);
775  return builder_.Finish();
776 }
777 
779  using type = MemoryConfig;
780  static auto constexpr Create = CreateMemoryConfig;
781 };
782 
783 struct MemoryDesc FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
785  struct Traits;
786  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
791  VT_SIZE = 12
792  };
794  return static_cast<tt::target::ttnn::StorageType>(GetField<uint16_t>(VT_STORAGE_TYPE, 0));
795  }
796  const tt::target::Dim2d *tile_shape() const {
797  return GetStruct<const tt::target::Dim2d *>(VT_TILE_SHAPE);
798  }
800  return static_cast<tt::target::DataType>(GetField<uint16_t>(VT_DATA_TYPE, 0));
801  }
802  const tt::target::ttnn::MemoryConfig *memory_config() const {
803  return GetPointer<const tt::target::ttnn::MemoryConfig *>(VT_MEMORY_CONFIG);
804  }
805  uint64_t size() const {
806  return GetField<uint64_t>(VT_SIZE, 0);
807  }
808  bool Verify(::flatbuffers::Verifier &verifier) const {
809  return VerifyTableStart(verifier) &&
810  VerifyField<uint16_t>(verifier, VT_STORAGE_TYPE, 2) &&
811  VerifyField<tt::target::Dim2d>(verifier, VT_TILE_SHAPE, 4) &&
812  VerifyField<uint16_t>(verifier, VT_DATA_TYPE, 2) &&
813  VerifyOffset(verifier, VT_MEMORY_CONFIG) &&
814  verifier.VerifyTable(memory_config()) &&
815  VerifyField<uint64_t>(verifier, VT_SIZE, 8) &&
816  verifier.EndTable();
817  }
818 };
819 
821  typedef MemoryDesc Table;
822  ::flatbuffers::FlatBufferBuilder &fbb_;
823  ::flatbuffers::uoffset_t start_;
825  fbb_.AddElement<uint16_t>(MemoryDesc::VT_STORAGE_TYPE, static_cast<uint16_t>(storage_type), 0);
826  }
827  void add_tile_shape(const tt::target::Dim2d *tile_shape) {
828  fbb_.AddStruct(MemoryDesc::VT_TILE_SHAPE, tile_shape);
829  }
831  fbb_.AddElement<uint16_t>(MemoryDesc::VT_DATA_TYPE, static_cast<uint16_t>(data_type), 0);
832  }
833  void add_memory_config(::flatbuffers::Offset<tt::target::ttnn::MemoryConfig> memory_config) {
834  fbb_.AddOffset(MemoryDesc::VT_MEMORY_CONFIG, memory_config);
835  }
836  void add_size(uint64_t size) {
837  fbb_.AddElement<uint64_t>(MemoryDesc::VT_SIZE, size, 0);
838  }
839  explicit MemoryDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
840  : fbb_(_fbb) {
841  start_ = fbb_.StartTable();
842  }
843  ::flatbuffers::Offset<MemoryDesc> Finish() {
844  const auto end = fbb_.EndTable(start_);
845  auto o = ::flatbuffers::Offset<MemoryDesc>(end);
846  return o;
847  }
848 };
849 
850 inline ::flatbuffers::Offset<MemoryDesc> CreateMemoryDesc(
851  ::flatbuffers::FlatBufferBuilder &_fbb,
853  const tt::target::Dim2d *tile_shape = nullptr,
855  ::flatbuffers::Offset<tt::target::ttnn::MemoryConfig> memory_config = 0,
856  uint64_t size = 0) {
857  MemoryDescBuilder builder_(_fbb);
858  builder_.add_size(size);
859  builder_.add_memory_config(memory_config);
860  builder_.add_tile_shape(tile_shape);
861  builder_.add_data_type(data_type);
862  builder_.add_storage_type(storage_type);
863  return builder_.Finish();
864 }
865 
867  using type = MemoryDesc;
868  static auto constexpr Create = CreateMemoryDesc;
869 };
870 
871 struct LayoutDesc FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
873  struct Traits;
874  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
877  VT_STRATEGY = 8
878  };
880  return static_cast<tt::target::OOBVal>(GetField<uint16_t>(VT_OOB_VAL, 0));
881  }
882  const tt::target::ttnn::MemoryDesc *memory_desc() const {
883  return GetPointer<const tt::target::ttnn::MemoryDesc *>(VT_MEMORY_DESC);
884  }
885  const tt::target::ttnn::DistributionStrategy *strategy() const {
886  return GetPointer<const tt::target::ttnn::DistributionStrategy *>(VT_STRATEGY);
887  }
888  bool Verify(::flatbuffers::Verifier &verifier) const {
889  return VerifyTableStart(verifier) &&
890  VerifyField<uint16_t>(verifier, VT_OOB_VAL, 2) &&
891  VerifyOffset(verifier, VT_MEMORY_DESC) &&
892  verifier.VerifyTable(memory_desc()) &&
893  VerifyOffset(verifier, VT_STRATEGY) &&
894  verifier.VerifyTable(strategy()) &&
895  verifier.EndTable();
896  }
897 };
898 
900  typedef LayoutDesc Table;
901  ::flatbuffers::FlatBufferBuilder &fbb_;
902  ::flatbuffers::uoffset_t start_;
904  fbb_.AddElement<uint16_t>(LayoutDesc::VT_OOB_VAL, static_cast<uint16_t>(oob_val), 0);
905  }
906  void add_memory_desc(::flatbuffers::Offset<tt::target::ttnn::MemoryDesc> memory_desc) {
907  fbb_.AddOffset(LayoutDesc::VT_MEMORY_DESC, memory_desc);
908  }
909  void add_strategy(::flatbuffers::Offset<tt::target::ttnn::DistributionStrategy> strategy) {
910  fbb_.AddOffset(LayoutDesc::VT_STRATEGY, strategy);
911  }
912  explicit LayoutDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
913  : fbb_(_fbb) {
914  start_ = fbb_.StartTable();
915  }
916  ::flatbuffers::Offset<LayoutDesc> Finish() {
917  const auto end = fbb_.EndTable(start_);
918  auto o = ::flatbuffers::Offset<LayoutDesc>(end);
919  return o;
920  }
921 };
922 
923 inline ::flatbuffers::Offset<LayoutDesc> CreateLayoutDesc(
924  ::flatbuffers::FlatBufferBuilder &_fbb,
926  ::flatbuffers::Offset<tt::target::ttnn::MemoryDesc> memory_desc = 0,
927  ::flatbuffers::Offset<tt::target::ttnn::DistributionStrategy> strategy = 0) {
928  LayoutDescBuilder builder_(_fbb);
929  builder_.add_strategy(strategy);
930  builder_.add_memory_desc(memory_desc);
931  builder_.add_oob_val(oob_val);
932  return builder_.Finish();
933 }
934 
936  using type = LayoutDesc;
937  static auto constexpr Create = CreateLayoutDesc;
938 };
939 
940 struct TensorDesc FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
942  struct Traits;
943  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
944  VT_SHAPE = 4,
946  VT_LAYOUT = 8
947  };
948  const ::flatbuffers::Vector<int32_t> *shape() const {
949  return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_SHAPE);
950  }
951  const ::flatbuffers::Vector<int32_t> *mesh_shape() const {
952  return GetPointer<const ::flatbuffers::Vector<int32_t> *>(VT_MESH_SHAPE);
953  }
954  const tt::target::ttnn::LayoutDesc *layout() const {
955  return GetPointer<const tt::target::ttnn::LayoutDesc *>(VT_LAYOUT);
956  }
957  bool Verify(::flatbuffers::Verifier &verifier) const {
958  return VerifyTableStart(verifier) &&
959  VerifyOffset(verifier, VT_SHAPE) &&
960  verifier.VerifyVector(shape()) &&
961  VerifyOffset(verifier, VT_MESH_SHAPE) &&
962  verifier.VerifyVector(mesh_shape()) &&
963  VerifyOffset(verifier, VT_LAYOUT) &&
964  verifier.VerifyTable(layout()) &&
965  verifier.EndTable();
966  }
967 };
968 
970  typedef TensorDesc Table;
971  ::flatbuffers::FlatBufferBuilder &fbb_;
972  ::flatbuffers::uoffset_t start_;
973  void add_shape(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape) {
974  fbb_.AddOffset(TensorDesc::VT_SHAPE, shape);
975  }
976  void add_mesh_shape(::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> mesh_shape) {
977  fbb_.AddOffset(TensorDesc::VT_MESH_SHAPE, mesh_shape);
978  }
979  void add_layout(::flatbuffers::Offset<tt::target::ttnn::LayoutDesc> layout) {
980  fbb_.AddOffset(TensorDesc::VT_LAYOUT, layout);
981  }
982  explicit TensorDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
983  : fbb_(_fbb) {
984  start_ = fbb_.StartTable();
985  }
986  ::flatbuffers::Offset<TensorDesc> Finish() {
987  const auto end = fbb_.EndTable(start_);
988  auto o = ::flatbuffers::Offset<TensorDesc>(end);
989  return o;
990  }
991 };
992 
993 inline ::flatbuffers::Offset<TensorDesc> CreateTensorDesc(
994  ::flatbuffers::FlatBufferBuilder &_fbb,
995  ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape = 0,
996  ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> mesh_shape = 0,
997  ::flatbuffers::Offset<tt::target::ttnn::LayoutDesc> layout = 0) {
998  TensorDescBuilder builder_(_fbb);
999  builder_.add_layout(layout);
1000  builder_.add_mesh_shape(mesh_shape);
1001  builder_.add_shape(shape);
1002  return builder_.Finish();
1003 }
1004 
1006  using type = TensorDesc;
1007  static auto constexpr Create = CreateTensorDesc;
1008 };
1009 
1010 inline ::flatbuffers::Offset<TensorDesc> CreateTensorDescDirect(
1011  ::flatbuffers::FlatBufferBuilder &_fbb,
1012  const std::vector<int32_t> *shape = nullptr,
1013  const std::vector<int32_t> *mesh_shape = nullptr,
1014  ::flatbuffers::Offset<tt::target::ttnn::LayoutDesc> layout = 0) {
1015  auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
1016  auto mesh_shape__ = mesh_shape ? _fbb.CreateVector<int32_t>(*mesh_shape) : 0;
1018  _fbb,
1019  shape__,
1020  mesh_shape__,
1021  layout);
1022 }
1023 
1024 struct TensorRef FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1026  struct Traits;
1027  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1029  VT_SIZE = 6,
1030  VT_DESC = 8
1031  };
1032  uint32_t global_id() const {
1033  return GetField<uint32_t>(VT_GLOBAL_ID, 0);
1034  }
1035  uint64_t size() const {
1036  return GetField<uint64_t>(VT_SIZE, 0);
1037  }
1038  const tt::target::ttnn::TensorDesc *desc() const {
1039  return GetPointer<const tt::target::ttnn::TensorDesc *>(VT_DESC);
1040  }
1041  bool Verify(::flatbuffers::Verifier &verifier) const {
1042  return VerifyTableStart(verifier) &&
1043  VerifyField<uint32_t>(verifier, VT_GLOBAL_ID, 4) &&
1044  VerifyField<uint64_t>(verifier, VT_SIZE, 8) &&
1045  VerifyOffset(verifier, VT_DESC) &&
1046  verifier.VerifyTable(desc()) &&
1047  verifier.EndTable();
1048  }
1049 };
1050 
1052  typedef TensorRef Table;
1053  ::flatbuffers::FlatBufferBuilder &fbb_;
1054  ::flatbuffers::uoffset_t start_;
1055  void add_global_id(uint32_t global_id) {
1056  fbb_.AddElement<uint32_t>(TensorRef::VT_GLOBAL_ID, global_id, 0);
1057  }
1058  void add_size(uint64_t size) {
1059  fbb_.AddElement<uint64_t>(TensorRef::VT_SIZE, size, 0);
1060  }
1061  void add_desc(::flatbuffers::Offset<tt::target::ttnn::TensorDesc> desc) {
1062  fbb_.AddOffset(TensorRef::VT_DESC, desc);
1063  }
1064  explicit TensorRefBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1065  : fbb_(_fbb) {
1066  start_ = fbb_.StartTable();
1067  }
1068  ::flatbuffers::Offset<TensorRef> Finish() {
1069  const auto end = fbb_.EndTable(start_);
1070  auto o = ::flatbuffers::Offset<TensorRef>(end);
1071  return o;
1072  }
1073 };
1074 
1075 inline ::flatbuffers::Offset<TensorRef> CreateTensorRef(
1076  ::flatbuffers::FlatBufferBuilder &_fbb,
1077  uint32_t global_id = 0,
1078  uint64_t size = 0,
1079  ::flatbuffers::Offset<tt::target::ttnn::TensorDesc> desc = 0) {
1080  TensorRefBuilder builder_(_fbb);
1081  builder_.add_size(size);
1082  builder_.add_desc(desc);
1083  builder_.add_global_id(global_id);
1084  return builder_.Finish();
1085 }
1086 
1088  using type = TensorRef;
1089  static auto constexpr Create = CreateTensorRef;
1090 };
1091 
1092 inline bool VerifyDistributedTensorConfig(::flatbuffers::Verifier &verifier, const void *obj, DistributedTensorConfig type) {
1093  switch (type) {
1095  return true;
1096  }
1098  auto ptr = reinterpret_cast<const tt::target::ttnn::ReplicateTensor *>(obj);
1099  return verifier.VerifyTable(ptr);
1100  }
1102  auto ptr = reinterpret_cast<const tt::target::ttnn::ShardTensor *>(obj);
1103  return verifier.VerifyTable(ptr);
1104  }
1106  auto ptr = reinterpret_cast<const tt::target::ttnn::ShardTensor2D *>(obj);
1107  return verifier.VerifyTable(ptr);
1108  }
1110  auto ptr = reinterpret_cast<const tt::target::ttnn::AllGatherTensor *>(obj);
1111  return verifier.VerifyTable(ptr);
1112  }
1113  default: return true;
1114  }
1115 }
1116 
1117 inline bool VerifyDistributedTensorConfigVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<DistributedTensorConfig> *types) {
1118  if (!values || !types) return !values && !types;
1119  if (values->size() != types->size()) return false;
1120  for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
1122  verifier, values->Get(i), types->GetEnum<DistributedTensorConfig>(i))) {
1123  return false;
1124  }
1125  }
1126  return true;
1127 }
1128 
1129 } // namespace ttnn
1130 } // namespace target
1131 } // namespace tt
1132 
1133 #endif // FLATBUFFERS_GENERATED_TYPES_TT_TARGET_TTNN_H_
VT_TILE_SHAPE
Definition: types_generated.h:45
VT_SHAPE
Definition: types_generated.h:44
VT_DATA_TYPE
Definition: types_generated.h:46
VT_GLOBAL_ID
Definition: types_generated.h:379
VT_OOB_VAL
Definition: types_generated.h:149
VT_SIZE
Definition: types_generated.h:381
VT_MEMORY_DESC
Definition: types_generated.h:302
VT_STRATEGY_TYPE
Definition: types_generated.h:561
VT_MESH_SHAPE
Definition: types_generated.h:945
VT_GRID
Definition: types_generated.h:648
VT_STORAGE_TYPE
Definition: types_generated.h:787
VT_TENSOR_MEMORY_LAYOUT
Definition: types_generated.h:719
VT_BUFFER_TYPE
Definition: types_generated.h:720
VT_MEMORY_CONFIG
Definition: types_generated.h:790
VT_SHARD_SHAPE
Definition: ccl_generated.h:240
VT_LAYOUT
Definition: creation_generated.h:257
VT_STRATEGY
Definition: creation_generated.h:355
const MeshShardType(& EnumValuesMeshShardType())[4]
Definition: types_generated.h:179
inline ::flatbuffers::Offset< TensorDesc > CreateTensorDesc(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> shape=0, ::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> mesh_shape=0, ::flatbuffers::Offset< tt::target::ttnn::LayoutDesc > layout=0)
Definition: types_generated.h:993
inline ::flatbuffers::Offset< ReplicateTensor > CreateReplicateTensor(::flatbuffers::FlatBufferBuilder &_fbb, uint32_t replication_factor=0)
Definition: types_generated.h:415
inline ::flatbuffers::Offset< ShardSpec > CreateShardSpecDirect(::flatbuffers::FlatBufferBuilder &_fbb, const std::vector< tt::target::Dim2dRange > *grid=nullptr, const std::vector< int32_t > *shard_shape=nullptr)
Definition: types_generated.h:703
MeshShardType
Definition: types_generated.h:170
inline ::flatbuffers::Offset< MemoryDesc > CreateMemoryDesc(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::StorageType storage_type=tt::target::ttnn::StorageType::Owned, const tt::target::Dim2d *tile_shape=nullptr, tt::target::DataType data_type=tt::target::DataType::Float32, ::flatbuffers::Offset< tt::target::ttnn::MemoryConfig > memory_config=0, uint64_t size=0)
Definition: types_generated.h:850
const char * EnumNameMeshShardType(MeshShardType e)
Definition: types_generated.h:200
const char * EnumNameDistributedTensorConfig(DistributedTensorConfig e)
Definition: types_generated.h:239
inline ::flatbuffers::Offset< ShardTensor > CreateShardTensor(::flatbuffers::FlatBufferBuilder &_fbb, uint32_t shard_dim=0)
Definition: types_generated.h:462
const char *const * EnumNamesDistributedTensorConfig()
Definition: types_generated.h:227
StorageType
Definition: types_generated.h:101
inline ::flatbuffers::Offset< TensorRef > CreateTensorRef(::flatbuffers::FlatBufferBuilder &_fbb, uint32_t global_id=0, uint64_t size=0, ::flatbuffers::Offset< tt::target::ttnn::TensorDesc > desc=0)
Definition: types_generated.h:1075
const DistributedTensorConfig(& EnumValuesDistributedTensorConfig())[5]
Definition: types_generated.h:216
inline ::flatbuffers::Offset< ShardSpec > CreateShardSpec(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2dRange * >> grid=0, ::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> shard_shape=0)
Definition: types_generated.h:688
FLATBUFFERS_STRUCT_END(CoreCoord, 16)
FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(8) CoreCoord FLATBUFFERS_FINAL_CLASS
Definition: types_generated.h:268
inline ::flatbuffers::Offset< AllGatherTensor > CreateAllGatherTensor(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:546
const char * EnumNameTensorMemoryLayout(TensorMemoryLayout e)
Definition: types_generated.h:95
const char *const * EnumNamesStorageType()
Definition: types_generated.h:122
const TensorMemoryLayout(& EnumValuesTensorMemoryLayout())[5]
Definition: types_generated.h:72
DistributedTensorConfig
Definition: types_generated.h:206
inline ::flatbuffers::Offset< CoreRangeSet > CreateCoreRangeSet(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::ttnn::CoreRange * >> core_ranges=0)
Definition: types_generated.h:359
TensorMemoryLayout
Definition: types_generated.h:62
inline ::flatbuffers::Offset< ShardTensor2D > CreateShardTensor2D(::flatbuffers::FlatBufferBuilder &_fbb, const tt::target::Dim2d *shard_mesh=nullptr)
Definition: types_generated.h:509
const char * EnumNameStorageType(StorageType e)
Definition: types_generated.h:134
inline ::flatbuffers::Offset< DistributionStrategy > CreateDistributionStrategy(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::DistributedTensorConfig strategy_type=tt::target::ttnn::DistributedTensorConfig::NONE, ::flatbuffers::Offset< void > strategy=0)
Definition: types_generated.h:629
const char * EnumNameMeshShardDirection(MeshShardDirection e)
Definition: types_generated.h:164
const char *const * EnumNamesTensorMemoryLayout()
Definition: types_generated.h:83
inline ::flatbuffers::Offset< CoreRangeSet > CreateCoreRangeSetDirect(::flatbuffers::FlatBufferBuilder &_fbb, const std::vector< tt::target::ttnn::CoreRange > *core_ranges=nullptr)
Definition: types_generated.h:372
const MeshShardDirection(& EnumValuesMeshShardDirection())[2]
Definition: types_generated.h:147
bool VerifyDistributedTensorConfig(::flatbuffers::Verifier &verifier, const void *obj, DistributedTensorConfig type)
Definition: types_generated.h:1092
const StorageType(& EnumValuesStorageType())[5]
Definition: types_generated.h:111
bool VerifyDistributedTensorConfigVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset< void >> *values, const ::flatbuffers::Vector< DistributedTensorConfig > *types)
Definition: types_generated.h:1117
const char *const * EnumNamesMeshShardType()
Definition: types_generated.h:189
inline ::flatbuffers::Offset< MemoryConfig > CreateMemoryConfig(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::ttnn::TensorMemoryLayout tensor_memory_layout=tt::target::ttnn::TensorMemoryLayout::Interleaved, tt::target::BufferType buffer_type=tt::target::BufferType::DRAM, ::flatbuffers::Offset< tt::target::ttnn::ShardSpec > shard_spec=0)
Definition: types_generated.h:766
inline ::flatbuffers::Offset< LayoutDesc > CreateLayoutDesc(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::OOBVal oob_val=tt::target::OOBVal::Undef, ::flatbuffers::Offset< tt::target::ttnn::MemoryDesc > memory_desc=0, ::flatbuffers::Offset< tt::target::ttnn::DistributionStrategy > strategy=0)
Definition: types_generated.h:923
MeshShardDirection
Definition: types_generated.h:140
inline ::flatbuffers::Offset< TensorDesc > CreateTensorDescDirect(::flatbuffers::FlatBufferBuilder &_fbb, const std::vector< int32_t > *shape=nullptr, const std::vector< int32_t > *mesh_shape=nullptr, ::flatbuffers::Offset< tt::target::ttnn::LayoutDesc > layout=0)
Definition: types_generated.h:1010
const char *const * EnumNamesMeshShardDirection()
Definition: types_generated.h:155
OOBVal
Definition: types_generated.h:144
BufferType
Definition: types_generated.h:283
DataType
Definition: types_generated.h:81
Definition: debug_info_generated.h:18
Definition: debug_info_generated.h:36
Definition: types_generated.h:531
AllGatherTensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:535
::flatbuffers::Offset< AllGatherTensor > Finish()
Definition: types_generated.h:539
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:533
AllGatherTensor Table
Definition: types_generated.h:532
::flatbuffers::uoffset_t start_
Definition: types_generated.h:534
Definition: types_generated.h:552
AllGatherTensor type
Definition: types_generated.h:553
static constexpr auto Create
Definition: types_generated.h:554
Definition: types_generated.h:292
CoreCoord type
Definition: types_generated.h:293
Definition: types_generated.h:341
::flatbuffers::uoffset_t start_
Definition: types_generated.h:344
::flatbuffers::Offset< CoreRangeSet > Finish()
Definition: types_generated.h:352
CoreRangeSetBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:348
void add_core_ranges(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::ttnn::CoreRange * >> core_ranges)
Definition: types_generated.h:345
CoreRangeSet Table
Definition: types_generated.h:342
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:343
Definition: types_generated.h:367
CoreRangeSet type
Definition: types_generated.h:368
static constexpr auto Create
Definition: types_generated.h:369
Definition: types_generated.h:320
CoreRange type
Definition: types_generated.h:321
Definition: types_generated.h:245
static const DistributedTensorConfig enum_value
Definition: types_generated.h:246
Definition: types_generated.h:608
void add_strategy_type(tt::target::ttnn::DistributedTensorConfig strategy_type)
Definition: types_generated.h:612
DistributionStrategyBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:618
::flatbuffers::uoffset_t start_
Definition: types_generated.h:611
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:610
DistributionStrategy Table
Definition: types_generated.h:609
void add_strategy(::flatbuffers::Offset< void > strategy)
Definition: types_generated.h:615
::flatbuffers::Offset< DistributionStrategy > Finish()
Definition: types_generated.h:622
Definition: types_generated.h:639
static constexpr auto Create
Definition: types_generated.h:641
DistributionStrategy type
Definition: types_generated.h:640
Definition: binary_generated.h:31
TensorDescBuilder Builder
Definition: types_generated.h:941
const tt::target::Dim2d * tile_shape() const
Definition: types_generated.h:796
tt::target::ttnn::TensorMemoryLayout tensor_memory_layout() const
Definition: types_generated.h:723
ShardSpecBuilder Builder
Definition: types_generated.h:645
tt::target::BufferType buffer_type() const
Definition: types_generated.h:726
ReplicateTensorBuilder Builder
Definition: types_generated.h:382
const tt::target::ttnn::ShardTensor2D * strategy_as_ShardTensor2D() const
Definition: types_generated.h:577
const tt::target::ttnn::MemoryConfig * memory_config() const
Definition: types_generated.h:802
const void * strategy() const
Definition: types_generated.h:567
const ::flatbuffers::Vector< int32_t > * mesh_shape() const
Definition: types_generated.h:951
const ::flatbuffers::Vector< int32_t > * shape() const
Definition: types_generated.h:948
ShardTensorBuilder Builder
Definition: types_generated.h:429
uint32_t replication_factor() const
Definition: types_generated.h:387
tt::target::OOBVal oob_val() const
Definition: types_generated.h:879
const tt::target::ttnn::AllGatherTensor * strategy_as_AllGatherTensor() const
Definition: types_generated.h:580
const tt::target::ttnn::DistributionStrategy * strategy() const
Definition: types_generated.h:885
uint64_t size() const
Definition: types_generated.h:805
tt::target::DataType data_type() const
Definition: types_generated.h:799
TensorRefBuilder Builder
Definition: types_generated.h:1025
const ::flatbuffers::Vector< const tt::target::Dim2dRange * > * grid() const
Definition: types_generated.h:651
LayoutDescBuilder Builder
Definition: types_generated.h:872
DistributionStrategyBuilder Builder
Definition: types_generated.h:558
bool Verify(::flatbuffers::Verifier &verifier) const
Definition: types_generated.h:333
ShardTensor2DBuilder Builder
Definition: types_generated.h:476
MemoryConfigBuilder Builder
Definition: types_generated.h:716
MemoryDescBuilder Builder
Definition: types_generated.h:784
const tt::target::ttnn::MemoryDesc * memory_desc() const
Definition: types_generated.h:882
uint32_t shard_dim() const
Definition: types_generated.h:434
const tt::target::Dim2d * shard_mesh() const
Definition: types_generated.h:481
const ::flatbuffers::Vector< const tt::target::ttnn::CoreRange * > * core_ranges() const
Definition: types_generated.h:330
CoreRangeSetBuilder Builder
Definition: types_generated.h:325
const tt::target::ttnn::ReplicateTensor * strategy_as_ReplicateTensor() const
Definition: types_generated.h:571
const tt::target::ttnn::ShardTensor * strategy_as_ShardTensor() const
Definition: types_generated.h:574
AllGatherTensorBuilder Builder
Definition: types_generated.h:523
const ::flatbuffers::Vector< int32_t > * shard_shape() const
Definition: types_generated.h:654
const tt::target::ttnn::TensorDesc * desc() const
Definition: types_generated.h:1038
tt::target::ttnn::DistributedTensorConfig strategy_type() const
Definition: types_generated.h:564
const tt::target::ttnn::LayoutDesc * layout() const
Definition: types_generated.h:954
tt::target::ttnn::StorageType storage_type() const
Definition: types_generated.h:793
const tt::target::ttnn::ShardSpec * shard_spec() const
Definition: types_generated.h:729
uint32_t global_id() const
Definition: types_generated.h:1032
Definition: types_generated.h:899
void add_memory_desc(::flatbuffers::Offset< tt::target::ttnn::MemoryDesc > memory_desc)
Definition: types_generated.h:906
::flatbuffers::uoffset_t start_
Definition: types_generated.h:902
LayoutDesc Table
Definition: types_generated.h:900
void add_oob_val(tt::target::OOBVal oob_val)
Definition: types_generated.h:903
LayoutDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:912
::flatbuffers::Offset< LayoutDesc > Finish()
Definition: types_generated.h:916
void add_strategy(::flatbuffers::Offset< tt::target::ttnn::DistributionStrategy > strategy)
Definition: types_generated.h:909
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:901
Definition: types_generated.h:935
LayoutDesc type
Definition: types_generated.h:936
static constexpr auto Create
Definition: types_generated.h:937
Definition: types_generated.h:742
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:744
MemoryConfigBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:755
MemoryConfig Table
Definition: types_generated.h:743
void add_tensor_memory_layout(tt::target::ttnn::TensorMemoryLayout tensor_memory_layout)
Definition: types_generated.h:746
::flatbuffers::uoffset_t start_
Definition: types_generated.h:745
void add_shard_spec(::flatbuffers::Offset< tt::target::ttnn::ShardSpec > shard_spec)
Definition: types_generated.h:752
::flatbuffers::Offset< MemoryConfig > Finish()
Definition: types_generated.h:759
void add_buffer_type(tt::target::BufferType buffer_type)
Definition: types_generated.h:749
Definition: types_generated.h:778
static constexpr auto Create
Definition: types_generated.h:780
MemoryConfig type
Definition: types_generated.h:779
Definition: types_generated.h:820
MemoryDesc Table
Definition: types_generated.h:821
void add_memory_config(::flatbuffers::Offset< tt::target::ttnn::MemoryConfig > memory_config)
Definition: types_generated.h:833
MemoryDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:839
void add_size(uint64_t size)
Definition: types_generated.h:836
void add_storage_type(tt::target::ttnn::StorageType storage_type)
Definition: types_generated.h:824
void add_tile_shape(const tt::target::Dim2d *tile_shape)
Definition: types_generated.h:827
::flatbuffers::uoffset_t start_
Definition: types_generated.h:823
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:822
void add_data_type(tt::target::DataType data_type)
Definition: types_generated.h:830
::flatbuffers::Offset< MemoryDesc > Finish()
Definition: types_generated.h:843
Definition: types_generated.h:866
static constexpr auto Create
Definition: types_generated.h:868
MemoryDesc type
Definition: types_generated.h:867
Definition: types_generated.h:397
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:399
ReplicateTensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:404
ReplicateTensor Table
Definition: types_generated.h:398
void add_replication_factor(uint32_t replication_factor)
Definition: types_generated.h:401
::flatbuffers::Offset< ReplicateTensor > Finish()
Definition: types_generated.h:408
::flatbuffers::uoffset_t start_
Definition: types_generated.h:400
Definition: types_generated.h:423
static constexpr auto Create
Definition: types_generated.h:425
ReplicateTensor type
Definition: types_generated.h:424
Definition: types_generated.h:667
ShardSpecBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:677
void add_grid(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2dRange * >> grid)
Definition: types_generated.h:671
ShardSpec Table
Definition: types_generated.h:668
::flatbuffers::uoffset_t start_
Definition: types_generated.h:670
::flatbuffers::Offset< ShardSpec > Finish()
Definition: types_generated.h:681
void add_shard_shape(::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> shard_shape)
Definition: types_generated.h:674
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:669
Definition: types_generated.h:698
ShardSpec type
Definition: types_generated.h:699
static constexpr auto Create
Definition: types_generated.h:700
Definition: types_generated.h:491
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:493
ShardTensor2DBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:498
ShardTensor2D Table
Definition: types_generated.h:492
::flatbuffers::uoffset_t start_
Definition: types_generated.h:494
::flatbuffers::Offset< ShardTensor2D > Finish()
Definition: types_generated.h:502
void add_shard_mesh(const tt::target::Dim2d *shard_mesh)
Definition: types_generated.h:495
Definition: types_generated.h:517
static constexpr auto Create
Definition: types_generated.h:519
ShardTensor2D type
Definition: types_generated.h:518
Definition: types_generated.h:444
ShardTensor Table
Definition: types_generated.h:445
::flatbuffers::Offset< ShardTensor > Finish()
Definition: types_generated.h:455
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:446
ShardTensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:451
void add_shard_dim(uint32_t shard_dim)
Definition: types_generated.h:448
::flatbuffers::uoffset_t start_
Definition: types_generated.h:447
Definition: types_generated.h:470
static constexpr auto Create
Definition: types_generated.h:472
ShardTensor type
Definition: types_generated.h:471
Definition: types_generated.h:969
::flatbuffers::uoffset_t start_
Definition: types_generated.h:972
void add_layout(::flatbuffers::Offset< tt::target::ttnn::LayoutDesc > layout)
Definition: types_generated.h:979
TensorDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:982
TensorDesc Table
Definition: types_generated.h:970
void add_mesh_shape(::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> mesh_shape)
Definition: types_generated.h:976
::flatbuffers::Offset< TensorDesc > Finish()
Definition: types_generated.h:986
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:971
void add_shape(::flatbuffers::Offset<::flatbuffers::Vector< int32_t >> shape)
Definition: types_generated.h:973
Definition: types_generated.h:1005
static constexpr auto Create
Definition: types_generated.h:1007
TensorDesc type
Definition: types_generated.h:1006
Definition: types_generated.h:1051
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:1053
void add_global_id(uint32_t global_id)
Definition: types_generated.h:1055
::flatbuffers::uoffset_t start_
Definition: types_generated.h:1054
void add_size(uint64_t size)
Definition: types_generated.h:1058
void add_desc(::flatbuffers::Offset< tt::target::ttnn::TensorDesc > desc)
Definition: types_generated.h:1061
::flatbuffers::Offset< TensorRef > Finish()
Definition: types_generated.h:1068
TensorRef Table
Definition: types_generated.h:1052
TensorRefBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:1064
Definition: types_generated.h:1087
static constexpr auto Create
Definition: types_generated.h:1089
TensorRef type
Definition: types_generated.h:1088