4 #ifndef FLATBUFFERS_GENERATED_PROGRAM_TT_TARGET_METAL_H_
5 #define FLATBUFFERS_GENERATED_PROGRAM_TT_TARGET_METAL_H_
7 #include "flatbuffers/flatbuffers.h"
11 static_assert(FLATBUFFERS_VERSION_MAJOR == 24 &&
12 FLATBUFFERS_VERSION_MINOR == 3 &&
13 FLATBUFFERS_VERSION_REVISION == 25,
14 "Non-compatible flatbuffers version included");
24 struct NocConfigBuilder;
27 struct TensixConfigBuilder;
30 struct EthernetConfigBuilder;
33 struct KernelSourceBuilder;
36 struct KernelBinaryBuilder;
39 struct RuntimeArgTensorAddressBuilder;
42 struct RuntimeArgSemaphoreAddressBuilder;
45 struct KernelDescBuilder;
48 struct ProgramDescBuilder;
66 static const char *
const names[3] = {
76 const size_t index =
static_cast<size_t>(e);
88 static const EthType values[] = {
96 static const char *
const names[3] = {
106 const size_t index =
static_cast<size_t>(e);
126 static const char *
const names[3] = {
136 const size_t index =
static_cast<size_t>(e);
160 static const char *
const names[5] = {
172 const size_t index =
static_cast<size_t>(e);
193 bool VerifyKernelConfigVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<KernelConfig> *types);
219 static const char *
const names[7] = {
233 const size_t index =
static_cast<size_t>(e);
253 static const char *
const names[3] = {
263 const size_t index =
static_cast<size_t>(e);
276 static const Kernel values[] = {
285 static const char *
const names[4] = {
296 const size_t index =
static_cast<size_t>(e);
313 bool VerifyKernelVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<Kernel> *types);
333 static const char *
const names[4] = {
335 "RuntimeArgTensorAddress",
336 "RuntimeArgSemaphoreAddress",
344 const size_t index =
static_cast<size_t>(e);
361 bool VerifyRuntimeArgVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<RuntimeArg> *types);
366 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
372 bool Verify(::flatbuffers::Verifier &verifier)
const {
373 return VerifyTableStart(verifier) &&
374 VerifyField<uint16_t>(verifier, VT_NOC_INDEX, 2) &&
381 ::flatbuffers::FlatBufferBuilder &
fbb_;
384 fbb_.AddElement<uint16_t>(NocConfig::VT_NOC_INDEX,
static_cast<uint16_t
>(noc_index), 0);
390 ::flatbuffers::Offset<NocConfig>
Finish() {
392 auto o = ::flatbuffers::Offset<NocConfig>(end);
398 ::flatbuffers::FlatBufferBuilder &_fbb,
413 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
417 VT_UNPACK_TO_DEST_MODE = 10
429 return GetPointer<const ::flatbuffers::Vector<tt::target::metal::UnpackToDestMode> *>(VT_UNPACK_TO_DEST_MODE);
431 bool Verify(::flatbuffers::Verifier &verifier)
const {
432 return VerifyTableStart(verifier) &&
436 VerifyOffset(verifier, VT_UNPACK_TO_DEST_MODE) &&
437 verifier.VerifyVector(unpack_to_dest_mode()) &&
444 ::flatbuffers::FlatBufferBuilder &
fbb_;
455 void add_unpack_to_dest_mode(::flatbuffers::Offset<::flatbuffers::Vector<tt::target::metal::UnpackToDestMode>> unpack_to_dest_mode) {
456 fbb_.AddOffset(TensixConfig::VT_UNPACK_TO_DEST_MODE, unpack_to_dest_mode);
462 ::flatbuffers::Offset<TensixConfig>
Finish() {
464 auto o = ::flatbuffers::Offset<TensixConfig>(end);
470 ::flatbuffers::FlatBufferBuilder &_fbb,
472 bool fp32_dest_acc_en =
false,
473 bool math_approx_mode =
false,
474 ::flatbuffers::Offset<::flatbuffers::Vector<tt::target::metal::UnpackToDestMode>> unpack_to_dest_mode = 0) {
489 ::flatbuffers::FlatBufferBuilder &_fbb,
491 bool fp32_dest_acc_en =
false,
492 bool math_approx_mode =
false,
493 const std::vector<tt::target::metal::UnpackToDestMode> *unpack_to_dest_mode =
nullptr) {
500 unpack_to_dest_mode__);
506 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
516 bool Verify(::flatbuffers::Verifier &verifier)
const {
517 return VerifyTableStart(verifier) &&
519 VerifyField<uint16_t>(verifier, VT_NOC_INDEX, 2) &&
526 ::flatbuffers::FlatBufferBuilder &
fbb_;
532 fbb_.AddElement<uint16_t>(EthernetConfig::VT_NOC_INDEX,
static_cast<uint16_t
>(noc_index), 0);
538 ::flatbuffers::Offset<EthernetConfig>
Finish() {
540 auto o = ::flatbuffers::Offset<EthernetConfig>(end);
546 ::flatbuffers::FlatBufferBuilder &_fbb,
563 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
568 const ::flatbuffers::String *
source()
const {
569 return GetPointer<const ::flatbuffers::String *>(
VT_SOURCE);
575 return GetPointer<const void *>(VT_CONFIG);
587 bool Verify(::flatbuffers::Verifier &verifier)
const {
588 return VerifyTableStart(verifier) &&
590 verifier.VerifyString(source()) &&
592 VerifyOffset(verifier, VT_CONFIG) &&
598 template<>
inline const tt::target::metal::NocConfig *KernelSource::config_as<tt::target::metal::NocConfig>()
const {
599 return config_as_NocConfig();
602 template<>
inline const tt::target::metal::TensixConfig *KernelSource::config_as<tt::target::metal::TensixConfig>()
const {
603 return config_as_TensixConfig();
606 template<>
inline const tt::target::metal::EthernetConfig *KernelSource::config_as<tt::target::metal::EthernetConfig>()
const {
607 return config_as_EthernetConfig();
612 ::flatbuffers::FlatBufferBuilder &
fbb_;
614 void add_source(::flatbuffers::Offset<::flatbuffers::String> source) {
621 fbb_.AddOffset(KernelSource::VT_CONFIG, config);
627 ::flatbuffers::Offset<KernelSource>
Finish() {
629 auto o = ::flatbuffers::Offset<KernelSource>(end);
635 ::flatbuffers::FlatBufferBuilder &_fbb,
636 ::flatbuffers::Offset<::flatbuffers::String> source = 0,
638 ::flatbuffers::Offset<void> config = 0) {
652 ::flatbuffers::FlatBufferBuilder &_fbb,
653 const char *source =
nullptr,
655 ::flatbuffers::Offset<void> config = 0) {
656 auto source__ = source ? _fbb.CreateString(source) : 0;
667 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
675 const ::flatbuffers::Vector<uint8_t> *
data()
const {
676 return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(
VT_DATA);
679 return GetPointer<const ::flatbuffers::String *>(VT_DEBUG_SOURCE);
681 bool Verify(::flatbuffers::Verifier &verifier)
const {
682 return VerifyTableStart(verifier) &&
684 VerifyOffset(verifier,
VT_DATA) &&
685 verifier.VerifyVector(data()) &&
686 VerifyOffset(verifier, VT_DEBUG_SOURCE) &&
687 verifier.VerifyString(debug_source()) &&
694 ::flatbuffers::FlatBufferBuilder &
fbb_;
699 void add_data(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data) {
703 fbb_.AddOffset(KernelBinary::VT_DEBUG_SOURCE, debug_source);
709 ::flatbuffers::Offset<KernelBinary>
Finish() {
711 auto o = ::flatbuffers::Offset<KernelBinary>(end);
717 ::flatbuffers::FlatBufferBuilder &_fbb,
719 ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data = 0,
720 ::flatbuffers::Offset<::flatbuffers::String> debug_source = 0) {
734 ::flatbuffers::FlatBufferBuilder &_fbb,
736 const std::vector<uint8_t> *data =
nullptr,
737 const char *debug_source =
nullptr) {
738 auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
739 auto debug_source__ = debug_source ? _fbb.CreateString(debug_source) : 0;
750 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
754 return GetField<uint32_t>(VT_OPERAND_IDX, 0);
756 bool Verify(::flatbuffers::Verifier &verifier)
const {
757 return VerifyTableStart(verifier) &&
758 VerifyField<uint32_t>(verifier, VT_OPERAND_IDX, 4) &&
765 ::flatbuffers::FlatBufferBuilder &
fbb_;
768 fbb_.AddElement<uint32_t>(RuntimeArgTensorAddress::VT_OPERAND_IDX, operand_idx, 0);
774 ::flatbuffers::Offset<RuntimeArgTensorAddress>
Finish() {
776 auto o = ::flatbuffers::Offset<RuntimeArgTensorAddress>(end);
782 ::flatbuffers::FlatBufferBuilder &_fbb,
783 uint32_t operand_idx = 0) {
797 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
807 bool Verify(::flatbuffers::Verifier &verifier)
const {
808 return VerifyTableStart(verifier) &&
817 ::flatbuffers::FlatBufferBuilder &
fbb_;
829 ::flatbuffers::Offset<RuntimeArgSemaphoreAddress>
Finish() {
831 auto o = ::flatbuffers::Offset<RuntimeArgSemaphoreAddress>(end);
837 ::flatbuffers::FlatBufferBuilder &_fbb,
838 uint32_t initial_value = 0,
854 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
867 return GetPointer<const void *>(
VT_KERNEL);
876 const ::flatbuffers::Vector<const tt::target::Dim2dRange *> *
core_range_set()
const {
877 return GetPointer<const ::flatbuffers::Vector<const tt::target::Dim2dRange *> *>(
VT_CORE_RANGE_SET);
879 const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::CBRef>> *
cbs()
const {
880 return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::CBRef>> *>(
VT_CBS);
883 return GetPointer<const ::flatbuffers::Vector<tt::target::metal::RuntimeArg> *>(
VT_RUNTIME_ARGS_TYPE);
885 const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *
runtime_args()
const {
886 return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *>(
VT_RUNTIME_ARGS);
889 return GetPointer<const ::flatbuffers::String *>(
VT_DEBUG_INFO);
891 bool Verify(::flatbuffers::Verifier &verifier)
const {
892 return VerifyTableStart(verifier) &&
897 verifier.VerifyVector(core_range_set()) &&
898 VerifyOffset(verifier,
VT_CBS) &&
899 verifier.VerifyVector(cbs()) &&
900 verifier.VerifyVectorOfTables(cbs()) &&
902 verifier.VerifyVector(runtime_args_type()) &&
904 verifier.VerifyVector(runtime_args()) &&
907 verifier.VerifyString(debug_info()) &&
912 template<>
inline const tt::target::metal::KernelSource *KernelDesc::kernel_as<tt::target::metal::KernelSource>()
const {
913 return kernel_as_KernelSource();
916 template<>
inline const tt::target::metal::KernelBinary *KernelDesc::kernel_as<tt::target::metal::KernelBinary>()
const {
917 return kernel_as_KernelBinary();
922 ::flatbuffers::FlatBufferBuilder &
fbb_;
930 void add_core_range_set(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2dRange *>> core_range_set) {
933 void add_cbs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::CBRef>>> cbs) {
936 void add_runtime_args_type(::flatbuffers::Offset<::flatbuffers::Vector<tt::target::metal::RuntimeArg>> runtime_args_type) {
939 void add_runtime_args(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<void>>> runtime_args) {
949 ::flatbuffers::Offset<KernelDesc>
Finish() {
951 auto o = ::flatbuffers::Offset<KernelDesc>(end);
957 ::flatbuffers::FlatBufferBuilder &_fbb,
959 ::flatbuffers::Offset<void> kernel = 0,
960 ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2dRange *>> core_range_set = 0,
961 ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::CBRef>>> cbs = 0,
962 ::flatbuffers::Offset<::flatbuffers::Vector<tt::target::metal::RuntimeArg>> runtime_args_type = 0,
963 ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<void>>> runtime_args = 0,
964 ::flatbuffers::Offset<::flatbuffers::String> debug_info = 0) {
982 ::flatbuffers::FlatBufferBuilder &_fbb,
984 ::flatbuffers::Offset<void> kernel = 0,
985 const std::vector<tt::target::Dim2dRange> *core_range_set =
nullptr,
986 const std::vector<::flatbuffers::Offset<tt::target::metal::CBRef>> *cbs =
nullptr,
987 const std::vector<tt::target::metal::RuntimeArg> *runtime_args_type =
nullptr,
988 const std::vector<::flatbuffers::Offset<void>> *runtime_args =
nullptr,
989 const char *debug_info =
nullptr) {
990 auto core_range_set__ = core_range_set ? _fbb.CreateVectorOfStructs<tt::target::Dim2dRange>(*core_range_set) : 0;
991 auto cbs__ = cbs ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::metal::CBRef>>(*cbs) : 0;
993 auto runtime_args__ = runtime_args ? _fbb.CreateVector<::flatbuffers::Offset<void>>(*runtime_args) : 0;
994 auto debug_info__ = debug_info ? _fbb.CreateString(debug_info) : 0;
1001 runtime_args_type__,
1009 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1012 const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::KernelDesc>> *
kernels()
const {
1013 return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::KernelDesc>> *>(VT_KERNELS);
1015 bool Verify(::flatbuffers::Verifier &verifier)
const {
1016 return VerifyTableStart(verifier) &&
1017 VerifyOffset(verifier, VT_KERNELS) &&
1018 verifier.VerifyVector(kernels()) &&
1019 verifier.VerifyVectorOfTables(kernels()) &&
1020 verifier.EndTable();
1026 ::flatbuffers::FlatBufferBuilder &
fbb_;
1028 void add_kernels(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::KernelDesc>>> kernels) {
1029 fbb_.AddOffset(ProgramDesc::VT_KERNELS, kernels);
1035 ::flatbuffers::Offset<ProgramDesc>
Finish() {
1037 auto o = ::flatbuffers::Offset<ProgramDesc>(end);
1043 ::flatbuffers::FlatBufferBuilder &_fbb,
1044 ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::metal::KernelDesc>>> kernels = 0) {
1047 return builder_.
Finish();
1056 ::flatbuffers::FlatBufferBuilder &_fbb,
1057 const std::vector<::flatbuffers::Offset<tt::target::metal::KernelDesc>> *kernels =
nullptr) {
1058 auto kernels__ = kernels ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::metal::KernelDesc>>(*kernels) : 0;
1070 auto ptr =
reinterpret_cast<const tt::target::metal::NocConfig *
>(obj);
1071 return verifier.VerifyTable(ptr);
1074 auto ptr =
reinterpret_cast<const tt::target::metal::TensixConfig *
>(obj);
1075 return verifier.VerifyTable(ptr);
1078 auto ptr =
reinterpret_cast<const tt::target::metal::EthernetConfig *
>(obj);
1079 return verifier.VerifyTable(ptr);
1081 default:
return true;
1085 inline bool VerifyKernelConfigVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<KernelConfig> *types) {
1086 if (!values || !types)
return !values && !types;
1087 if (values->size() != types->size())
return false;
1088 for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
1090 verifier, values->Get(i), types->GetEnum<
KernelConfig>(i))) {
1103 auto ptr =
reinterpret_cast<const tt::target::metal::KernelSource *
>(obj);
1104 return verifier.VerifyTable(ptr);
1107 auto ptr =
reinterpret_cast<const tt::target::metal::KernelBinary *
>(obj);
1108 return verifier.VerifyTable(ptr);
1110 default:
return true;
1114 inline bool VerifyKernelVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<Kernel> *types) {
1115 if (!values || !types)
return !values && !types;
1116 if (values->size() != types->size())
return false;
1117 for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
1119 verifier, values->Get(i), types->GetEnum<
Kernel>(i))) {
1132 auto ptr =
reinterpret_cast<const tt::target::metal::RuntimeArgTensorAddress *
>(obj);
1133 return verifier.VerifyTable(ptr);
1136 auto ptr =
reinterpret_cast<const tt::target::metal::RuntimeArgSemaphoreAddress *
>(obj);
1137 return verifier.VerifyTable(ptr);
1139 default:
return true;
1143 inline bool VerifyRuntimeArgVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<RuntimeArg> *types) {
1144 if (!values || !types)
return !values && !types;
1145 if (values->size() != types->size())
return false;
1146 for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
1148 verifier, values->Get(i), types->GetEnum<
RuntimeArg>(i))) {
VT_DEBUG_INFO
Definition: program_generated.h:5314
MathFidelity
Definition: types_generated.h:349
Definition: debug_info_generated.h:18
Definition: debug_info_generated.h:36