megengine-schema.js 78 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429
  1. export const mgb = {};
  2. mgb.serialization = mgb.serialization || {};
  3. mgb.serialization.fbs = mgb.serialization.fbs || {};
  4. mgb.serialization.fbs.DTypeEnum = {
  5. Float32: 0,
  6. Uint8: 1,
  7. Int8: 2,
  8. Int16: 3,
  9. Int32: 4,
  10. IntB1: 5,
  11. IntB2: 6,
  12. IntB4: 7,
  13. Byte: 8,
  14. Float16: 9,
  15. UintB4: 10,
  16. Quantized8Asymm: 11,
  17. QuantizedS32: 12,
  18. QuantizedS8: 13,
  19. Quantized4Asymm: 14,
  20. QuantizedS4: 15,
  21. QuantizedS16: 16,
  22. BFloat16: 17,
  23. Bool: 18,
  24. Uint16: 19,
  25. QuantizedS1: 20
  26. };
  27. mgb.serialization.fbs.LinearQuantizationParam = class LinearQuantizationParam {
  28. static decode(reader, position) {
  29. const $ = new mgb.serialization.fbs.LinearQuantizationParam();
  30. $.scale = reader.float32_(position, 4, 0);
  31. $.zero_point = reader.uint8_(position, 6, 0);
  32. return $;
  33. }
  34. };
  35. mgb.serialization.fbs.DTypeParam = class {
  36. static decode(reader, position, type) {
  37. switch (type) {
  38. case 1: return mgb.serialization.fbs.LinearQuantizationParam.decode(reader, position);
  39. default: return undefined;
  40. }
  41. }
  42. };
  43. mgb.serialization.fbs.DType = class DType {
  44. static decode(reader, position) {
  45. const $ = new mgb.serialization.fbs.DType();
  46. $.type = reader.int8_(position, 4, 0);
  47. $.param = reader.union(position, 6, mgb.serialization.fbs.DTypeParam);
  48. return $;
  49. }
  50. };
  51. mgb.serialization = mgb.serialization || {};
  52. mgb.serialization.fbs = mgb.serialization.fbs || {};
  53. mgb.serialization.fbs.param = mgb.serialization.fbs.param || {};
  54. mgb.serialization.fbs.param.ArgsortOrder = {
  55. ASCENDING: 0,
  56. DESCENDING: 1
  57. };
  58. mgb.serialization.fbs.param.BNFwdMode = {
  59. TRAINING: 0,
  60. INFERENCE: 1
  61. };
  62. mgb.serialization.fbs.param.BNParamDim = {
  63. DIM_11HW: 0,
  64. DIM_1CHW: 1,
  65. DIM_1C11: 2,
  66. DIM_111C: 3
  67. };
  68. mgb.serialization.fbs.param.CondTakeMode = {
  69. EQ: 0,
  70. NEQ: 1,
  71. LT: 2,
  72. LEQ: 3,
  73. GT: 4,
  74. GEQ: 5
  75. };
  76. mgb.serialization.fbs.param.Conv3DBiasNonlineMode = {
  77. IDENTITY: 0,
  78. RELU: 1,
  79. SIGMOID: 2
  80. };
  81. mgb.serialization.fbs.param.ConvBiasV0NonlineMode = {
  82. IDENTITY: 0,
  83. RELU: 1,
  84. SIGMOID: 2,
  85. H_SWISH: 3
  86. };
  87. mgb.serialization.fbs.param.ConvPoolingMethod = {
  88. WITH_TEXTURE_OBJ: 0,
  89. WITH_SHARED_MEM: 1
  90. };
  91. mgb.serialization.fbs.param.ConvPoolingNonlineMode = {
  92. IDENTITY: 0,
  93. RELU: 1,
  94. SIGMOID: 2
  95. };
  96. mgb.serialization.fbs.param.ConvPoolingPoolMode = {
  97. AVERAGE: 0,
  98. MAX_: 1
  99. };
  100. mgb.serialization.fbs.param.ConvolutionFormat = {
  101. NCHW: 0,
  102. NHWC: 1,
  103. NHWCD4: 2,
  104. NCHW4: 3,
  105. NCHW8: 4,
  106. NCHW32: 5,
  107. NCHW88: 6,
  108. NCHW44: 7,
  109. NCHW44_DOT: 8,
  110. NCHW4_NCHW32: 9,
  111. NCHW32_NCHW4: 10,
  112. NCHW4_NCHW: 11,
  113. NHWC_NCHW: 12,
  114. NHWC_NCHW4_IC_SMALL: 13,
  115. NCHW_NCHW4_IC_SMALL: 14,
  116. CHWN4: 15,
  117. NCHW64: 16,
  118. NCHW4_NHWC: 17
  119. };
  120. mgb.serialization.fbs.param.Convolution3DDataType = {
  121. FLOAT: 0,
  122. FLOAT_IO16xC32: 1
  123. };
  124. mgb.serialization.fbs.param.Convolution3DFormat = {
  125. NCDHW: 0,
  126. NDHWC: 1
  127. };
  128. mgb.serialization.fbs.param.Convolution3DMode = {
  129. CROSS_CORRELATION: 0,
  130. CONVOLUTION: 1
  131. };
  132. mgb.serialization.fbs.param.Convolution3DSparse = {
  133. DENSE: 0,
  134. GROUP: 1
  135. };
  136. mgb.serialization.fbs.param.ConvolutionV0DataType = {
  137. FLOAT: 0,
  138. INT8x8x16: 1,
  139. INT8x8x32: 2,
  140. FLOAT_IO16xC32: 3,
  141. QUINT8x8x32: 4,
  142. INT8x8xX: 5,
  143. QUINT4x4x32: 6
  144. };
  145. mgb.serialization.fbs.param.ConvolutionV0Format = {
  146. NCHW: 0,
  147. NHWC: 1,
  148. NHWCD4: 2,
  149. NCHW4: 3,
  150. NCHW8: 4,
  151. NCHW32: 5,
  152. NCHW88: 6,
  153. NCHW44: 7,
  154. NCHW44_DOT: 8,
  155. NCHW_WINOGRAD: 9,
  156. NCHW88_WINOGRAD: 10,
  157. NCHW44_WINOGRAD: 11,
  158. NCHW4_NCHW32: 12,
  159. NCHW32_NCHW4: 13,
  160. NCHW4_NCHW: 14,
  161. NHWC_NCHW: 15,
  162. NHWC_NCHW4_IC_SMALL: 16,
  163. NCHW_NCHW4_IC_SMALL: 17,
  164. CHWN4: 18,
  165. NCHW4_NHWC: 19
  166. };
  167. mgb.serialization.fbs.param.ConvolutionV0Mode = {
  168. CROSS_CORRELATION: 0,
  169. CONVOLUTION: 1
  170. };
  171. mgb.serialization.fbs.param.ConvolutionV0Sparse = {
  172. DENSE: 0,
  173. GROUP: 1
  174. };
  175. mgb.serialization.fbs.param.ConvolutionV1ComputeMode = {
  176. DEFAULT: 0,
  177. FLOAT32: 1
  178. };
  179. mgb.serialization.fbs.param.CvtColorMode = {
  180. RGB2GRAY: 0,
  181. RGB2YUV: 1,
  182. YUV2RGB: 2,
  183. GRAY2RGB: 3,
  184. RGBA2RGB: 4,
  185. RGBA2BGR: 5,
  186. RGBA2GRAY: 6,
  187. RGB2BGR: 7,
  188. BGR2GRAY: 8,
  189. BGR2RGB: 9,
  190. YUV2GRAY_NV21: 10,
  191. YUV2RGB_NV21: 11,
  192. YUV2BGR_NV21: 12,
  193. YUV2GRAY_NV12: 13,
  194. YUV2RGB_NV12: 14,
  195. YUV2BGR_NV12: 15,
  196. YUV2GRAY_YV12: 16,
  197. YUV2RGB_YV12: 17,
  198. YUV2BGR_YV12: 18,
  199. YUV2GRAY_YU12: 19,
  200. YUV2RGB_YU12: 20,
  201. YUV2BGR_YU12: 21,
  202. YCrCb2RGB: 22,
  203. YCrCb2BGR: 23,
  204. BT601_YUV2RGB_NV21: 24,
  205. BT601_YUV2BGR_NV21: 25,
  206. BT601_YUV2RGB_NV12: 26,
  207. BT601_YUV2BGR_NV12: 27,
  208. BT601_YUV2RGB_YV12: 28,
  209. BT601_YUV2BGR_YV12: 29,
  210. BT601_YUV2RGB_YU12: 30,
  211. BT601_YUV2BGR_YU12: 31
  212. };
  213. mgb.serialization.fbs.param.DctChannelSelectV0FastImpl = {
  214. NONE: 0,
  215. FIX_32_MASK: 1
  216. };
  217. mgb.serialization.fbs.param.ElemwiseMode = {
  218. RELU: 0,
  219. ABS: 1,
  220. ACOS: 2,
  221. ASIN: 3,
  222. CEIL: 4,
  223. COS: 5,
  224. EXP: 6,
  225. EXPM1: 7,
  226. FLOOR: 8,
  227. LOG: 9,
  228. LOG1P: 10,
  229. NEGATE: 11,
  230. SIGMOID: 12,
  231. SIN: 13,
  232. TANH: 14,
  233. ABS_GRAD: 15,
  234. ADD: 16,
  235. FLOOR_DIV: 17,
  236. MAX_: 18,
  237. MIN_: 19,
  238. MOD: 20,
  239. MUL: 21,
  240. POW: 22,
  241. SIGMOID_GRAD: 23,
  242. SUB: 24,
  243. SWITCH_GT0: 25,
  244. TANH_GRAD: 26,
  245. TRUE_DIV: 27,
  246. LOG_SUM_EXP: 28,
  247. LT: 29,
  248. LEQ: 30,
  249. EQ: 31,
  250. SHL: 32,
  251. SHR: 33,
  252. COND_LEQ_MOV: 34,
  253. FUSE_MUL_ADD3: 35,
  254. FUSE_MUL_ADD4: 36,
  255. FUSE_ADD_RELU: 37,
  256. FUSE_ADD_SIGMOID: 38,
  257. FUSE_ADD_TANH: 39,
  258. FAST_TANH: 40,
  259. FAST_TANH_GRAD: 41,
  260. ROUND: 42,
  261. RMULH: 43,
  262. ATAN2: 44,
  263. ERF: 45,
  264. ERFINV: 46,
  265. ERFC: 47,
  266. ERFCINV: 48,
  267. H_SWISH: 49,
  268. H_SWISH_GRAD: 50,
  269. FUSE_ADD_H_SWISH: 51,
  270. NOT: 52,
  271. AND: 53,
  272. OR: 54,
  273. XOR: 55,
  274. SILU: 56,
  275. SILU_GRAD: 57,
  276. GELU: 58,
  277. GELU_GRAD: 59
  278. };
  279. mgb.serialization.fbs.param.ElemwiseMultiTypeMode = {
  280. FUSE_MUL_ADD3_INT16x32x32x32: 0,
  281. FUSE_MUL_ADD3_IXxF32xF32xI8: 1,
  282. ROUND_SHR_SATURATE_IXxI8xI8: 2,
  283. FUSE_ADD_RMULH_ROUND_SHR_SATURATE_INT16x16x16x8: 3,
  284. FUSE_ADD_RMULH_ROUND_SHR_SATURATE_INT32x32x32x8: 4,
  285. ROUND_SHR_SATURATE_IXxI8xI16: 5,
  286. QADD: 6,
  287. QFUSE_ADD_RELU: 7,
  288. QMUL: 8,
  289. QMIN: 9,
  290. QMAX: 10,
  291. QSUB: 11,
  292. QTRUE_DIV: 12,
  293. QFUSE_ADD_SIGMOID: 13,
  294. QFUSE_ADD_TANH: 14,
  295. QRELU: 15,
  296. QABS: 16,
  297. QSIGMOID: 17,
  298. QEXP: 18,
  299. QTANH: 19,
  300. QFUSE_MUL_ADD3: 20,
  301. QFAST_TANH: 21,
  302. QNEGATE: 22,
  303. QACOS: 23,
  304. QASIN: 24,
  305. QCEIL: 25,
  306. QCOS: 26,
  307. QEXPM1: 27,
  308. QFLOOR: 28,
  309. QLOG: 29,
  310. QLOG1P: 30,
  311. QSIN: 31,
  312. QROUND: 32,
  313. QERF: 33,
  314. QERFINV: 34,
  315. QERFC: 35,
  316. QERFCINV: 36,
  317. QABS_GRAD: 37,
  318. QFLOOR_DIV: 38,
  319. QMOD: 39,
  320. QSIGMOID_GRAD: 40,
  321. QSWITCH_GT0: 41,
  322. QTANH_GRAD: 42,
  323. QLT: 43,
  324. QLEQ: 44,
  325. QEQ: 45,
  326. QPOW: 46,
  327. QLOG_SUM_EXP: 47,
  328. QFAST_TANH_GRAD: 48,
  329. QATAN2: 49,
  330. QCOND_LEQ_MOV: 50,
  331. QH_SWISH: 51,
  332. QFUSE_ADD_H_SWISH: 52,
  333. QH_SWISH_GRAD: 53,
  334. FUSE_MUL_ADD3_INT16xF32xF32xF32: 54,
  335. MUL_INT16xF32xF32: 55,
  336. FUSE_MUL_ADD3_UINT8xF32xF32xF32: 56
  337. };
  338. mgb.serialization.fbs.param.MatrixMulFormat = {
  339. DEFAULT: 0,
  340. MK4: 1,
  341. MK8: 2,
  342. MK4_DOT: 3
  343. };
  344. mgb.serialization.fbs.param.MatrixMulV0DataType = {
  345. FLOAT: 0,
  346. INT8x8x16: 1,
  347. INT8x8x32: 2,
  348. FLOAT_IO16xC32: 3,
  349. QUINT8x8x32: 4,
  350. QUINT4x4x32: 5
  351. };
  352. mgb.serialization.fbs.param.MatrixMulV1ComputeMode = {
  353. DEFAULT: 0,
  354. FLOAT32: 1
  355. };
  356. mgb.serialization.fbs.param.PaddingPaddingMode = {
  357. REPLICATE: 0,
  358. REFLECT: 1,
  359. CONSTANT: 2
  360. };
  361. mgb.serialization.fbs.param.PoolingV0Mode = {
  362. MAX_: 0,
  363. AVERAGE: 1,
  364. AVERAGE_COUNT_EXCLUDE_PADDING: 2
  365. };
  366. mgb.serialization.fbs.param.RNNCellNonlineMode = {
  367. IDENTITY: 0,
  368. RELU: 1,
  369. TANH: 2
  370. };
  371. mgb.serialization.fbs.param.ROIAlignV0Mode = {
  372. MAX_: 0,
  373. AVERAGE: 1
  374. };
  375. mgb.serialization.fbs.param.ROIPoolingMode = {
  376. MAX_: 0,
  377. AVERAGE: 1
  378. };
  379. mgb.serialization.fbs.param.ReduceDataType = {
  380. DEFAULT: 0,
  381. FLOAT_IO16xC32: 1,
  382. FLOAT_O32xC32: 2,
  383. FLOAT_O16xC32: 3,
  384. QUINT_I8xO32: 4,
  385. QINT_I8xO32: 5
  386. };
  387. mgb.serialization.fbs.param.ReduceMode = {
  388. SUM: 0,
  389. SUM_SQR: 1,
  390. PRODUCT: 2,
  391. MIN_: 3,
  392. MAX_: 4,
  393. MEAN: 5
  394. };
  395. mgb.serialization.fbs.param.ReduceV0Mode = {
  396. SUM: 0,
  397. SUM_SQR: 1,
  398. PRODUCT: 2,
  399. MIN_: 3,
  400. MAX_: 4
  401. };
  402. mgb.serialization.fbs.param.ReduceV1DataType = {
  403. DEFAULT: 0,
  404. FLOAT_IO16xC32: 1,
  405. FLOAT_O32xC32: 2,
  406. FLOAT_O16xC32: 3,
  407. QUINT_I8xO32: 4,
  408. QINT_I8xO32: 5
  409. };
  410. mgb.serialization.fbs.param.ReduceV1Mode = {
  411. SUM: 0,
  412. SUM_SQR: 1,
  413. PRODUCT: 2,
  414. MIN_: 3,
  415. MAX_: 4,
  416. MEAN: 5
  417. };
  418. mgb.serialization.fbs.param.RelayoutFormatV0Mode = {
  419. NHWC_NHWCD4: 0,
  420. NHWCD4_NHWC: 1,
  421. NHWC_NHWCD4I: 2,
  422. NCHW_NHWCD4: 3,
  423. NCHW_NHWCD4I: 4,
  424. NHWCD4I_NCHW: 5,
  425. NHWCD4_NCHW: 6,
  426. INTER_WEIGHT_DENSE: 7,
  427. INTER_WEIGHT_DENSEI: 8,
  428. INTER_WEIGHT_GROUP: 9,
  429. INTER_WEIGHT_GROUPI: 10,
  430. INTER_WEIGHT_CHAN: 11,
  431. INTER_WEIGHT_CHANI: 12,
  432. INTER_WEIGHT_DENSEI_DOT: 13,
  433. INTER_WEIGHT_GROUPI_DOT: 14,
  434. NCHW4_CHWN4: 15,
  435. CHWN4_NCHW4: 16,
  436. NCHW_NCHW88_CONV_DENSE_WEIGHT: 17,
  437. NCHW_NCHW88_CONV_CHAN_WEIGHT: 18,
  438. NCHW_NCHW88_CONV_GROUP_WEIGHT: 19,
  439. NCHW_NCHW88: 20,
  440. NCHW88_NCHW: 21,
  441. NCHW_NCHW4_IC_SMALL: 22,
  442. NCHW_NCHW4_IC_SMALL_CONV_DENSE_WEIGHT: 23,
  443. NCHW_NCHW4: 24,
  444. NCHW4_NCHW: 25,
  445. NCHW_NCHW4_WEIGHT: 26,
  446. NCHW_NCHW64: 27,
  447. NCHW64_NCHW: 28,
  448. NCHW_NHWC: 29,
  449. NHWC_NCHW: 30,
  450. NHWCD4I_NHWC: 31
  451. };
  452. mgb.serialization.fbs.param.SeparableConvBorderMode = {
  453. BORDER_REPLICATE: 0,
  454. BORDER_REFLECT: 1,
  455. BORDER_REFLECT_101: 2,
  456. BORDER_WRAP: 3,
  457. BORDER_CONSTANT: 4,
  458. BORDER_TRANSPARENT: 5,
  459. BORDER_ISOLATED: 6
  460. };
  461. mgb.serialization.fbs.param.SeparableConv3DBorderMode = {
  462. BORDER_REPLICATE: 0,
  463. BORDER_REFLECT: 1,
  464. BORDER_REFLECT_101: 2,
  465. BORDER_WRAP: 3,
  466. BORDER_CONSTANT: 4,
  467. BORDER_TRANSPARENT: 5,
  468. BORDER_ISOLATED: 6
  469. };
  470. mgb.serialization.fbs.param.SpatialTfGridGeneratorMode = {
  471. AFFINE: 0
  472. };
  473. mgb.serialization.fbs.param.SpatialTfSamplerMode = {
  474. BILINEAR: 0
  475. };
  476. mgb.serialization.fbs.param.TopKMode = {
  477. KTH_ONLY: 0,
  478. VALUE_IDX_NOSORT: 1,
  479. VALUE_IDX_SORTED: 2
  480. };
  481. mgb.serialization.fbs.param.WarpPerspectiveV1BorderMode = {
  482. REPLICATE: 0,
  483. REFLECT: 1,
  484. REFLECT_101: 2,
  485. WRAP: 3,
  486. CONSTANT: 4,
  487. TRANSPARENT: 5,
  488. ISOLATED: 6
  489. };
  490. mgb.serialization.fbs.param.WarpPerspectiveV1InterpolationMode = {
  491. NEAREST: 0,
  492. LINEAR: 1,
  493. AREA: 2,
  494. CUBIC: 3,
  495. LANCZOS4: 4
  496. };
  497. mgb.serialization.fbs.param.Empty = class Empty {
  498. static decode(/* reader, position */) {
  499. const $ = new mgb.serialization.fbs.param.Empty();
  500. return $;
  501. }
  502. };
  503. mgb.serialization.fbs.param.Axis = class Axis {
  504. static decode(reader, position) {
  505. const $ = new mgb.serialization.fbs.param.Axis();
  506. $.axis = reader.int32_(position, 4, 0);
  507. return $;
  508. }
  509. };
  510. mgb.serialization.fbs.param.ConvolutionV0 = class ConvolutionV0 {
  511. static decode(reader, position) {
  512. const $ = new mgb.serialization.fbs.param.ConvolutionV0();
  513. $.mode = reader.uint32_(position, 4, 0);
  514. $.pad_h = reader.uint32_(position, 6, 0);
  515. $.pad_w = reader.uint32_(position, 8, 0);
  516. $.stride_h = reader.uint32_(position, 10, 1);
  517. $.stride_w = reader.uint32_(position, 12, 1);
  518. $.dilate_h = reader.uint32_(position, 14, 1);
  519. $.dilate_w = reader.uint32_(position, 16, 1);
  520. $.data_type = reader.uint32_(position, 18, 0);
  521. $.sparse = reader.uint32_(position, 20, 0);
  522. $.format = reader.uint32_(position, 22, 0);
  523. return $;
  524. }
  525. };
  526. mgb.serialization.fbs.param.ConvolutionV1 = class ConvolutionV1 {
  527. static decode(reader, position) {
  528. const $ = new mgb.serialization.fbs.param.ConvolutionV1();
  529. $.mode = reader.uint32_(position, 4, 0);
  530. $.pad_h = reader.uint32_(position, 6, 0);
  531. $.pad_w = reader.uint32_(position, 8, 0);
  532. $.stride_h = reader.uint32_(position, 10, 1);
  533. $.stride_w = reader.uint32_(position, 12, 1);
  534. $.dilate_h = reader.uint32_(position, 14, 1);
  535. $.dilate_w = reader.uint32_(position, 16, 1);
  536. $.sparse = reader.uint32_(position, 18, 0);
  537. $.format = reader.uint32_(position, 20, 0);
  538. $.compute_mode = reader.uint32_(position, 22, 0);
  539. return $;
  540. }
  541. };
  542. mgb.serialization.fbs.param.Convolution = class Convolution {
  543. static decode(reader, position) {
  544. const $ = new mgb.serialization.fbs.param.Convolution();
  545. $.mode = reader.uint32_(position, 4, 0);
  546. $.pad_h = reader.uint32_(position, 6, 0);
  547. $.pad_w = reader.uint32_(position, 8, 0);
  548. $.stride_h = reader.uint32_(position, 10, 1);
  549. $.stride_w = reader.uint32_(position, 12, 1);
  550. $.dilate_h = reader.uint32_(position, 14, 1);
  551. $.dilate_w = reader.uint32_(position, 16, 1);
  552. $.sparse = reader.uint32_(position, 18, 0);
  553. $.format = reader.uint32_(position, 20, 0);
  554. $.compute_mode = reader.uint32_(position, 22, 0);
  555. return $;
  556. }
  557. };
  558. mgb.serialization.fbs.param.MaskPropagate = class MaskPropagate {
  559. static decode(reader, position) {
  560. const $ = new mgb.serialization.fbs.param.MaskPropagate();
  561. $.pad_h = reader.uint32_(position, 4, 0);
  562. $.pad_w = reader.uint32_(position, 6, 0);
  563. $.stride_h = reader.uint32_(position, 8, 1);
  564. $.stride_w = reader.uint32_(position, 10, 1);
  565. $.kernel_h = reader.uint32_(position, 12, 1);
  566. $.kernel_w = reader.uint32_(position, 14, 1);
  567. $.dilate_h = reader.uint32_(position, 16, 1);
  568. $.dilate_w = reader.uint32_(position, 18, 1);
  569. return $;
  570. }
  571. };
  572. mgb.serialization.fbs.param.ConvPooling = class ConvPooling {
  573. static decode(reader, position) {
  574. const $ = new mgb.serialization.fbs.param.ConvPooling();
  575. $.method = reader.uint32_(position, 4, 0);
  576. $.convMode = reader.uint32_(position, 6, 0);
  577. $.poolMode = reader.uint32_(position, 8, 0);
  578. $.nonlineMode = reader.uint32_(position, 10, 0);
  579. $.pool_shape_h = reader.uint32_(position, 12, 1);
  580. $.pool_shape_w = reader.uint32_(position, 14, 1);
  581. $.pool_stride_h = reader.uint32_(position, 16, 1);
  582. $.pool_stride_w = reader.uint32_(position, 18, 1);
  583. $.pool_pad_h = reader.uint32_(position, 20, 0);
  584. $.pool_pad_w = reader.uint32_(position, 22, 0);
  585. $.conv_stride_h = reader.uint32_(position, 24, 1);
  586. $.conv_stride_w = reader.uint32_(position, 26, 1);
  587. $.conv_pad_h = reader.uint32_(position, 28, 0);
  588. $.conv_pad_w = reader.uint32_(position, 30, 0);
  589. return $;
  590. }
  591. };
  592. mgb.serialization.fbs.param.ConvBiasV0 = class ConvBiasV0 {
  593. static decode(reader, position) {
  594. const $ = new mgb.serialization.fbs.param.ConvBiasV0();
  595. $.nonlineMode = reader.uint32_(position, 4, 0);
  596. $.mode = reader.uint32_(position, 6, 0);
  597. $.pad_h = reader.uint32_(position, 8, 0);
  598. $.pad_w = reader.uint32_(position, 10, 0);
  599. $.stride_h = reader.uint32_(position, 12, 1);
  600. $.stride_w = reader.uint32_(position, 14, 1);
  601. return $;
  602. }
  603. };
  604. mgb.serialization.fbs.param.ConvBiasV1 = class ConvBiasV1 {
  605. static decode(reader, position) {
  606. const $ = new mgb.serialization.fbs.param.ConvBiasV1();
  607. $.nonlineMode = reader.uint32_(position, 4, 0);
  608. $.mode = reader.uint32_(position, 6, 0);
  609. $.data_type = reader.uint32_(position, 8, 0);
  610. $.sparse = reader.uint32_(position, 10, 0);
  611. $.format = reader.uint32_(position, 12, 0);
  612. $.pad_h = reader.uint32_(position, 14, 0);
  613. $.pad_w = reader.uint32_(position, 16, 0);
  614. $.stride_h = reader.uint32_(position, 18, 1);
  615. $.stride_w = reader.uint32_(position, 20, 1);
  616. $.dilate_h = reader.uint32_(position, 22, 1);
  617. $.dilate_w = reader.uint32_(position, 24, 1);
  618. return $;
  619. }
  620. };
  621. mgb.serialization.fbs.param.ConvBiasV2 = class ConvBiasV2 {
  622. static decode(reader, position) {
  623. const $ = new mgb.serialization.fbs.param.ConvBiasV2();
  624. $.nonlineMode = reader.uint32_(position, 4, 0);
  625. $.mode = reader.uint32_(position, 6, 0);
  626. $.sparse = reader.uint32_(position, 8, 0);
  627. $.format = reader.uint32_(position, 10, 0);
  628. $.pad_h = reader.uint32_(position, 12, 0);
  629. $.pad_w = reader.uint32_(position, 14, 0);
  630. $.stride_h = reader.uint32_(position, 16, 1);
  631. $.stride_w = reader.uint32_(position, 18, 1);
  632. $.dilate_h = reader.uint32_(position, 20, 1);
  633. $.dilate_w = reader.uint32_(position, 22, 1);
  634. $.compute_mode = reader.uint32_(position, 24, 0);
  635. return $;
  636. }
  637. };
  638. mgb.serialization.fbs.param.ConvBiasV3 = class ConvBiasV3 {
  639. static decode(reader, position) {
  640. const $ = new mgb.serialization.fbs.param.ConvBiasV3();
  641. $.nonlineMode = reader.uint32_(position, 4, 0);
  642. $.mode = reader.uint32_(position, 6, 0);
  643. $.sparse = reader.uint32_(position, 8, 0);
  644. $.format = reader.uint32_(position, 10, 0);
  645. $.pad_h = reader.uint32_(position, 12, 0);
  646. $.pad_w = reader.uint32_(position, 14, 0);
  647. $.stride_h = reader.uint32_(position, 16, 1);
  648. $.stride_w = reader.uint32_(position, 18, 1);
  649. $.dilate_h = reader.uint32_(position, 20, 1);
  650. $.dilate_w = reader.uint32_(position, 22, 1);
  651. $.output_block_size = reader.uint32_(position, 24, 0);
  652. $.compute_mode = reader.uint32_(position, 26, 0);
  653. return $;
  654. }
  655. };
  656. mgb.serialization.fbs.param.ConvBias = class ConvBias {
  657. static decode(reader, position) {
  658. const $ = new mgb.serialization.fbs.param.ConvBias();
  659. $.nonlineMode = reader.uint32_(position, 4, 0);
  660. $.mode = reader.uint32_(position, 6, 0);
  661. $.sparse = reader.uint32_(position, 8, 0);
  662. $.format = reader.uint32_(position, 10, 0);
  663. $.pad_h = reader.uint32_(position, 12, 0);
  664. $.pad_w = reader.uint32_(position, 14, 0);
  665. $.stride_h = reader.uint32_(position, 16, 1);
  666. $.stride_w = reader.uint32_(position, 18, 1);
  667. $.dilate_h = reader.uint32_(position, 20, 1);
  668. $.dilate_w = reader.uint32_(position, 22, 1);
  669. $.compute_mode = reader.uint32_(position, 24, 0);
  670. return $;
  671. }
  672. };
  673. mgb.serialization.fbs.param.SeparableConv = class SeparableConv {
  674. static decode(reader, position) {
  675. const $ = new mgb.serialization.fbs.param.SeparableConv();
  676. $.mode = reader.uint32_(position, 4, 0);
  677. $.borderMode = reader.uint32_(position, 6, 0);
  678. $.is_symm_kernel = reader.bool_(position, 8, true);
  679. $.pad_h = reader.uint32_(position, 10, 0);
  680. $.pad_w = reader.uint32_(position, 12, 0);
  681. $.stride_h = reader.uint32_(position, 14, 1);
  682. $.stride_w = reader.uint32_(position, 16, 1);
  683. $.ksize_h = reader.uint32_(position, 18, 3);
  684. $.ksize_w = reader.uint32_(position, 20, 3);
  685. $.anchor_h = reader.uint32_(position, 22, 1);
  686. $.anchor_w = reader.uint32_(position, 24, 1);
  687. return $;
  688. }
  689. };
  690. mgb.serialization.fbs.param.Images2Neibs = class Images2Neibs {
  691. static decode(reader, position) {
  692. const $ = new mgb.serialization.fbs.param.Images2Neibs();
  693. $.pad_h = reader.uint32_(position, 4, 0);
  694. $.pad_w = reader.uint32_(position, 6, 0);
  695. $.stride_h = reader.uint32_(position, 8, 1);
  696. $.stride_w = reader.uint32_(position, 10, 1);
  697. $.dilate_h = reader.uint32_(position, 12, 1);
  698. $.dilate_w = reader.uint32_(position, 14, 1);
  699. $.window_h = reader.uint32_(position, 16, 3);
  700. $.window_w = reader.uint32_(position, 18, 3);
  701. return $;
  702. }
  703. };
  704. mgb.serialization.fbs.param.SlidingWindowTranspose = class SlidingWindowTranspose {
  705. static decode(reader, position) {
  706. const $ = new mgb.serialization.fbs.param.SlidingWindowTranspose();
  707. $.out_h = reader.uint32_(position, 4, 0);
  708. $.out_w = reader.uint32_(position, 6, 0);
  709. $.pad_h = reader.uint32_(position, 8, 0);
  710. $.pad_w = reader.uint32_(position, 10, 0);
  711. $.stride_h = reader.uint32_(position, 12, 1);
  712. $.stride_w = reader.uint32_(position, 14, 1);
  713. $.dilate_h = reader.uint32_(position, 16, 1);
  714. $.dilate_w = reader.uint32_(position, 18, 1);
  715. $.window_h = reader.uint32_(position, 20, 3);
  716. $.window_w = reader.uint32_(position, 22, 3);
  717. return $;
  718. }
  719. };
  720. mgb.serialization.fbs.param.PoolingV0 = class PoolingV0 {
  721. static decode(reader, position) {
  722. const $ = new mgb.serialization.fbs.param.PoolingV0();
  723. $.mode = reader.uint32_(position, 4, 0);
  724. $.pad_h = reader.uint32_(position, 6, 0);
  725. $.pad_w = reader.uint32_(position, 8, 0);
  726. $.stride_h = reader.uint32_(position, 10, 2);
  727. $.stride_w = reader.uint32_(position, 12, 2);
  728. $.window_h = reader.uint32_(position, 14, 2);
  729. $.window_w = reader.uint32_(position, 16, 2);
  730. $.format = reader.uint32_(position, 18, 0);
  731. return $;
  732. }
  733. };
  734. mgb.serialization.fbs.param.Pooling = class Pooling {
  735. static decode(reader, position) {
  736. const $ = new mgb.serialization.fbs.param.Pooling();
  737. $.mode = reader.uint32_(position, 4, 0);
  738. $.pad_h = reader.uint32_(position, 6, 0);
  739. $.pad_w = reader.uint32_(position, 8, 0);
  740. $.stride_h = reader.uint32_(position, 10, 2);
  741. $.stride_w = reader.uint32_(position, 12, 2);
  742. $.window_h = reader.uint32_(position, 14, 2);
  743. $.window_w = reader.uint32_(position, 16, 2);
  744. $.format = reader.uint32_(position, 18, 0);
  745. return $;
  746. }
  747. };
  748. mgb.serialization.fbs.param.Softmax = class Softmax {
  749. static decode(reader, position) {
  750. const $ = new mgb.serialization.fbs.param.Softmax();
  751. $.axis = reader.int32_(position, 4, -1);
  752. return $;
  753. }
  754. };
  755. mgb.serialization.fbs.param.AdaptivePoolingV0 = class AdaptivePoolingV0 {
  756. static decode(reader, position) {
  757. const $ = new mgb.serialization.fbs.param.AdaptivePoolingV0();
  758. $.mode = reader.uint32_(position, 4, 0);
  759. $.format = reader.uint32_(position, 6, 0);
  760. return $;
  761. }
  762. };
  763. mgb.serialization.fbs.param.AdaptivePooling = class AdaptivePooling {
  764. static decode(reader, position) {
  765. const $ = new mgb.serialization.fbs.param.AdaptivePooling();
  766. $.mode = reader.uint32_(position, 4, 0);
  767. $.format = reader.uint32_(position, 6, 0);
  768. return $;
  769. }
  770. };
  771. mgb.serialization.fbs.param.LRN = class LRN {
  772. static decode(reader, position) {
  773. const $ = new mgb.serialization.fbs.param.LRN();
  774. $.n = reader.uint32_(position, 4, 5);
  775. $.k = reader.float32_(position, 6, 2);
  776. $.alpha = reader.float32_(position, 8, 0.0001);
  777. $.beta = reader.float32_(position, 10, 0.75);
  778. return $;
  779. }
  780. };
  781. mgb.serialization.fbs.param.BN = class BN {
  782. static decode(reader, position) {
  783. const $ = new mgb.serialization.fbs.param.BN();
  784. $.param_dim = reader.uint32_(position, 4, 0);
  785. $.fwd_mode = reader.uint32_(position, 6, 0);
  786. $.epsilon = reader.float64_(position, 8, 0.0001);
  787. $.avg_factor = reader.float64_(position, 10, 1);
  788. $.scale = reader.float32_(position, 12, 1);
  789. $.bias = reader.float32_(position, 14, 0);
  790. return $;
  791. }
  792. };
  793. mgb.serialization.fbs.param.ROIPooling = class ROIPooling {
  794. static decode(reader, position) {
  795. const $ = new mgb.serialization.fbs.param.ROIPooling();
  796. $.mode = reader.uint32_(position, 4, 0);
  797. $.scale = reader.float32_(position, 6, 1);
  798. return $;
  799. }
  800. };
  801. mgb.serialization.fbs.param.WarpPerspectiveV1 = class WarpPerspectiveV1 {
  802. static decode(reader, position) {
  803. const $ = new mgb.serialization.fbs.param.WarpPerspectiveV1();
  804. $.imode = reader.uint32_(position, 4, 1);
  805. $.bmode = reader.uint32_(position, 6, 0);
  806. $.format = reader.uint32_(position, 8, 0);
  807. $.border_val = reader.float32_(position, 10, 0);
  808. return $;
  809. }
  810. };
  811. mgb.serialization.fbs.param.WarpPerspective = class WarpPerspective {
  812. static decode(reader, position) {
  813. const $ = new mgb.serialization.fbs.param.WarpPerspective();
  814. $.imode = reader.uint32_(position, 4, 1);
  815. $.bmode = reader.uint32_(position, 6, 0);
  816. $.format = reader.uint32_(position, 8, 0);
  817. $.border_val = reader.float32_(position, 10, 0);
  818. return $;
  819. }
  820. };
  821. mgb.serialization.fbs.param.SpatialTfGridGenerator = class SpatialTfGridGenerator {
  822. static decode(reader, position) {
  823. const $ = new mgb.serialization.fbs.param.SpatialTfGridGenerator();
  824. $.mode = reader.uint32_(position, 4, 0);
  825. return $;
  826. }
  827. };
  828. mgb.serialization.fbs.param.SpatialTfSampler = class SpatialTfSampler {
  829. static decode(reader, position) {
  830. const $ = new mgb.serialization.fbs.param.SpatialTfSampler();
  831. $.mode = reader.uint32_(position, 4, 0);
  832. return $;
  833. }
  834. };
  835. mgb.serialization.fbs.param.AddUpdate = class AddUpdate {
  836. static decode(reader, position) {
  837. const $ = new mgb.serialization.fbs.param.AddUpdate();
  838. $.alpha = reader.float32_(position, 4, 1);
  839. $.beta = reader.float32_(position, 6, 1);
  840. $.bias = reader.float32_(position, 8, 0);
  841. return $;
  842. }
  843. };
  844. mgb.serialization.fbs.param.Elemwise = class Elemwise {
  845. static decode(reader, position) {
  846. const $ = new mgb.serialization.fbs.param.Elemwise();
  847. $.mode = reader.uint32_(position, 4, 0);
  848. return $;
  849. }
  850. };
  851. mgb.serialization.fbs.param.ElemwiseMultiType = class ElemwiseMultiType {
  852. static decode(reader, position) {
  853. const $ = new mgb.serialization.fbs.param.ElemwiseMultiType();
  854. $.mode = reader.uint32_(position, 4, 0);
  855. return $;
  856. }
  857. };
  858. mgb.serialization.fbs.param.PowC = class PowC {
  859. static decode(reader, position) {
  860. const $ = new mgb.serialization.fbs.param.PowC();
  861. $.exp = reader.float32_(position, 4, 0);
  862. return $;
  863. }
  864. };
  865. mgb.serialization.fbs.param.DctChannelSelectV0 = class DctChannelSelectV0 {
  866. static decode(reader, position) {
  867. const $ = new mgb.serialization.fbs.param.DctChannelSelectV0();
  868. $.format = reader.uint32_(position, 4, 0);
  869. $.fastImpl = reader.uint32_(position, 6, 0);
  870. $.dct_block_size = reader.int32_(position, 8, 8);
  871. return $;
  872. }
  873. };
  874. mgb.serialization.fbs.param.DctChannelSelect = class DctChannelSelect {
  875. static decode(reader, position) {
  876. const $ = new mgb.serialization.fbs.param.DctChannelSelect();
  877. $.format = reader.uint32_(position, 4, 0);
  878. $.fastImpl = reader.uint32_(position, 6, 0);
  879. $.dct_block_size = reader.int32_(position, 8, 8);
  880. return $;
  881. }
  882. };
  883. mgb.serialization.fbs.param.MatrixMulV0 = class MatrixMulV0 {
  884. static decode(reader, position) {
  885. const $ = new mgb.serialization.fbs.param.MatrixMulV0();
  886. $.transposeA = reader.bool_(position, 4, false);
  887. $.transposeB = reader.bool_(position, 6, false);
  888. $.data_type = reader.uint32_(position, 8, 0);
  889. return $;
  890. }
  891. };
  892. mgb.serialization.fbs.param.MatrixMulV1 = class MatrixMulV1 {
  893. static decode(reader, position) {
  894. const $ = new mgb.serialization.fbs.param.MatrixMulV1();
  895. $.transposeA = reader.bool_(position, 4, false);
  896. $.transposeB = reader.bool_(position, 6, false);
  897. $.compute_mode = reader.uint32_(position, 8, 0);
  898. return $;
  899. }
  900. };
  901. mgb.serialization.fbs.param.MatrixMul = class MatrixMul {
  902. static decode(reader, position) {
  903. const $ = new mgb.serialization.fbs.param.MatrixMul();
  904. $.transposeA = reader.bool_(position, 4, false);
  905. $.transposeB = reader.bool_(position, 6, false);
  906. $.compute_mode = reader.uint32_(position, 8, 0);
  907. $.format = reader.uint32_(position, 10, 0);
  908. return $;
  909. }
  910. };
  911. mgb.serialization.fbs.param.SVD = class SVD {
  912. static decode(reader, position) {
  913. const $ = new mgb.serialization.fbs.param.SVD();
  914. $.full_matrices = reader.bool_(position, 4, false);
  915. $.compute_uv = reader.bool_(position, 6, true);
  916. return $;
  917. }
  918. };
  919. mgb.serialization.fbs.param.ReduceV0 = class ReduceV0 {
  920. static decode(reader, position) {
  921. const $ = new mgb.serialization.fbs.param.ReduceV0();
  922. $.mode = reader.uint32_(position, 4, 0);
  923. $.axis = reader.int32_(position, 6, -1);
  924. return $;
  925. }
  926. };
  927. mgb.serialization.fbs.param.ReduceV1 = class ReduceV1 {
  928. static decode(reader, position) {
  929. const $ = new mgb.serialization.fbs.param.ReduceV1();
  930. $.mode = reader.uint32_(position, 4, 0);
  931. $.axis = reader.int32_(position, 6, -1);
  932. $.data_type = reader.uint32_(position, 8, 0);
  933. return $;
  934. }
  935. };
  936. mgb.serialization.fbs.param.Reduce = class Reduce {
  937. static decode(reader, position) {
  938. const $ = new mgb.serialization.fbs.param.Reduce();
  939. $.mode = reader.uint32_(position, 4, 0);
  940. $.axis = reader.int32_(position, 6, 2147483647);
  941. $.data_type = reader.uint32_(position, 8, 0);
  942. return $;
  943. }
  944. };
  945. mgb.serialization.fbs.param.CumsumV0 = class CumsumV0 {
  946. static decode(reader, position) {
  947. const $ = new mgb.serialization.fbs.param.CumsumV0();
  948. $.axis = reader.int32_(position, 4, -1);
  949. $.exclusive = reader.bool_(position, 6, true);
  950. $.reverse = reader.bool_(position, 8, false);
  951. return $;
  952. }
  953. };
  954. mgb.serialization.fbs.param.Cumsum = class Cumsum {
  955. static decode(reader, position) {
  956. const $ = new mgb.serialization.fbs.param.Cumsum();
  957. $.axis = reader.int32_(position, 4, 2147483647);
  958. $.exclusive = reader.bool_(position, 6, true);
  959. $.reverse = reader.bool_(position, 8, false);
  960. return $;
  961. }
  962. };
  963. mgb.serialization.fbs.param.CondTake = class CondTake {
  964. static decode(reader, position) {
  965. const $ = new mgb.serialization.fbs.param.CondTake();
  966. $.mode = reader.uint32_(position, 4, 0);
  967. $.val = reader.float32_(position, 6, 0);
  968. $.eps = reader.float32_(position, 8, 0.000001);
  969. return $;
  970. }
  971. };
  972. mgb.serialization.fbs.param.Argsort = class Argsort {
  973. static decode(reader, position) {
  974. const $ = new mgb.serialization.fbs.param.Argsort();
  975. $.order = reader.uint32_(position, 4, 0);
  976. return $;
  977. }
  978. };
  979. mgb.serialization.fbs.param.IndexingRemap = class IndexingRemap {
  980. static decode(reader, position) {
  981. const $ = new mgb.serialization.fbs.param.IndexingRemap();
  982. $.is_non_overlapping = reader.bool_(position, 4, false);
  983. return $;
  984. }
  985. };
  986. mgb.serialization.fbs.param.Sleep = class Sleep {
  987. static decode(reader, position) {
  988. const $ = new mgb.serialization.fbs.param.Sleep();
  989. $.time = reader.float32_(position, 4, 0);
  990. return $;
  991. }
  992. };
  993. mgb.serialization.fbs.param.Linspace = class Linspace {
  994. static decode(reader, position) {
  995. const $ = new mgb.serialization.fbs.param.Linspace();
  996. $.endpoint = reader.bool_(position, 4, true);
  997. return $;
  998. }
  999. };
  1000. mgb.serialization.fbs.param.LinspaceFull = class LinspaceFull {
  1001. static decode(reader, position) {
  1002. const $ = new mgb.serialization.fbs.param.LinspaceFull();
  1003. $.start = reader.float64_(position, 4, 0);
  1004. $.stop = reader.float64_(position, 6, 1);
  1005. $.endpoint = reader.bool_(position, 8, true);
  1006. return $;
  1007. }
  1008. };
  1009. mgb.serialization.fbs.param.Eye = class Eye {
  1010. static decode(reader, position) {
  1011. const $ = new mgb.serialization.fbs.param.Eye();
  1012. $.k = reader.int32_(position, 4, 0);
  1013. $.dtype = reader.int8_(position, 6, 0);
  1014. return $;
  1015. }
  1016. };
  1017. mgb.serialization.fbs.param.Diag = class Diag {
  1018. static decode(reader, position) {
  1019. const $ = new mgb.serialization.fbs.param.Diag();
  1020. $.k = reader.int32_(position, 4, 0);
  1021. return $;
  1022. }
  1023. };
  1024. mgb.serialization.fbs.param.UniformRNGV0 = class UniformRNGV0 {
  1025. static decode(reader, position) {
  1026. const $ = new mgb.serialization.fbs.param.UniformRNGV0();
  1027. $.seed = reader.uint64_(position, 4, 0n);
  1028. return $;
  1029. }
  1030. };
  1031. mgb.serialization.fbs.param.UniformRNG = class UniformRNG {
  1032. static decode(reader, position) {
  1033. const $ = new mgb.serialization.fbs.param.UniformRNG();
  1034. $.seed = reader.uint64_(position, 4, 0n);
  1035. $.dtype = reader.int8_(position, 6, 0);
  1036. return $;
  1037. }
  1038. };
  1039. mgb.serialization.fbs.param.GaussianRNGV0 = class GaussianRNGV0 {
  1040. static decode(reader, position) {
  1041. const $ = new mgb.serialization.fbs.param.GaussianRNGV0();
  1042. $.seed = reader.uint64_(position, 4, 0n);
  1043. $.mean = reader.float32_(position, 6, 0);
  1044. $.std = reader.float32_(position, 8, 1);
  1045. return $;
  1046. }
  1047. };
  1048. mgb.serialization.fbs.param.GaussianRNG = class GaussianRNG {
  1049. static decode(reader, position) {
  1050. const $ = new mgb.serialization.fbs.param.GaussianRNG();
  1051. $.seed = reader.uint64_(position, 4, 0n);
  1052. $.mean = reader.float32_(position, 6, 0);
  1053. $.std = reader.float32_(position, 8, 1);
  1054. $.dtype = reader.int8_(position, 10, 0);
  1055. return $;
  1056. }
  1057. };
  1058. mgb.serialization.fbs.param.GammaRNG = class GammaRNG {
  1059. static decode(reader, position) {
  1060. const $ = new mgb.serialization.fbs.param.GammaRNG();
  1061. $.seed = reader.uint64_(position, 4, 0n);
  1062. return $;
  1063. }
  1064. };
  1065. mgb.serialization.fbs.param.BetaRNG = class BetaRNG {
  1066. static decode(reader, position) {
  1067. const $ = new mgb.serialization.fbs.param.BetaRNG();
  1068. $.seed = reader.uint64_(position, 4, 0n);
  1069. return $;
  1070. }
  1071. };
  1072. mgb.serialization.fbs.param.PoissonRNG = class PoissonRNG {
  1073. static decode(reader, position) {
  1074. const $ = new mgb.serialization.fbs.param.PoissonRNG();
  1075. $.seed = reader.uint64_(position, 4, 0n);
  1076. return $;
  1077. }
  1078. };
  1079. mgb.serialization.fbs.param.MultinomialRNG = class MultinomialRNG {
  1080. static decode(reader, position) {
  1081. const $ = new mgb.serialization.fbs.param.MultinomialRNG();
  1082. $.seed = reader.uint64_(position, 4, 0n);
  1083. $.num_samples = reader.uint64_(position, 6, 1n);
  1084. $.replacement = reader.bool_(position, 8, false);
  1085. return $;
  1086. }
  1087. };
  1088. mgb.serialization.fbs.param.PermutationRNG = class PermutationRNG {
  1089. static decode(reader, position) {
  1090. const $ = new mgb.serialization.fbs.param.PermutationRNG();
  1091. $.seed = reader.uint64_(position, 4, 0n);
  1092. $.dtype = reader.int8_(position, 6, 4);
  1093. return $;
  1094. }
  1095. };
  1096. mgb.serialization.fbs.param.ShuffleRNG = class ShuffleRNG {
  1097. static decode(reader, position) {
  1098. const $ = new mgb.serialization.fbs.param.ShuffleRNG();
  1099. $.seed = reader.uint64_(position, 4, 0n);
  1100. return $;
  1101. }
  1102. };
  1103. mgb.serialization.fbs.param.Flip = class Flip {
  1104. static decode(reader, position) {
  1105. const $ = new mgb.serialization.fbs.param.Flip();
  1106. $.vertical = reader.bool_(position, 4, false);
  1107. $.horizontal = reader.bool_(position, 6, false);
  1108. return $;
  1109. }
  1110. };
  1111. mgb.serialization.fbs.param.Rotate = class Rotate {
  1112. static decode(reader, position) {
  1113. const $ = new mgb.serialization.fbs.param.Rotate();
  1114. $.clockwise = reader.bool_(position, 4, true);
  1115. return $;
  1116. }
  1117. };
  1118. mgb.serialization.fbs.param.ROICopy = class ROICopy {
  1119. static decode(reader, position) {
  1120. const $ = new mgb.serialization.fbs.param.ROICopy();
  1121. $.row_from = reader.uint32_(position, 4, 0);
  1122. $.row_to = reader.uint32_(position, 6, 0);
  1123. $.col_from = reader.uint32_(position, 8, 0);
  1124. $.col_to = reader.uint32_(position, 10, 0);
  1125. return $;
  1126. }
  1127. };
  1128. mgb.serialization.fbs.param.CvtColor = class CvtColor {
  1129. static decode(reader, position) {
  1130. const $ = new mgb.serialization.fbs.param.CvtColor();
  1131. $.mode = reader.uint32_(position, 4, 0);
  1132. return $;
  1133. }
  1134. };
  1135. mgb.serialization.fbs.param.WarpAffineV0 = class WarpAffineV0 {
  1136. static decode(reader, position) {
  1137. const $ = new mgb.serialization.fbs.param.WarpAffineV0();
  1138. $.imode = reader.uint32_(position, 4, 1);
  1139. $.border_mode = reader.uint32_(position, 6, 0);
  1140. $.border_val = reader.float32_(position, 8, 0);
  1141. return $;
  1142. }
  1143. };
  1144. mgb.serialization.fbs.param.WarpAffineV1 = class WarpAffineV1 {
  1145. static decode(reader, position) {
  1146. const $ = new mgb.serialization.fbs.param.WarpAffineV1();
  1147. $.imode = reader.uint32_(position, 4, 1);
  1148. $.border_mode = reader.uint32_(position, 6, 0);
  1149. $.border_val = reader.float32_(position, 8, 0);
  1150. $.format = reader.uint32_(position, 10, 1);
  1151. return $;
  1152. }
  1153. };
  1154. mgb.serialization.fbs.param.WarpAffine = class WarpAffine {
  1155. static decode(reader, position) {
  1156. const $ = new mgb.serialization.fbs.param.WarpAffine();
  1157. $.imode = reader.uint32_(position, 4, 1);
  1158. $.border_mode = reader.uint32_(position, 6, 0);
  1159. $.border_val = reader.float32_(position, 8, 0);
  1160. $.format = reader.uint32_(position, 10, 1);
  1161. return $;
  1162. }
  1163. };
  1164. mgb.serialization.fbs.param.GaussianBlur = class GaussianBlur {
  1165. static decode(reader, position) {
  1166. const $ = new mgb.serialization.fbs.param.GaussianBlur();
  1167. $.border_mode = reader.uint32_(position, 4, 0);
  1168. $.kernel_height = reader.uint32_(position, 6, 0);
  1169. $.kernel_width = reader.uint32_(position, 8, 0);
  1170. $.sigma_x = reader.float32_(position, 10, 0);
  1171. $.sigma_y = reader.float32_(position, 12, 0);
  1172. return $;
  1173. }
  1174. };
  1175. mgb.serialization.fbs.param.ResizeV0 = class ResizeV0 {
  1176. static decode(reader, position) {
  1177. const $ = new mgb.serialization.fbs.param.ResizeV0();
  1178. $.imode = reader.uint32_(position, 4, 1);
  1179. return $;
  1180. }
  1181. };
  1182. mgb.serialization.fbs.param.ResizeV1 = class ResizeV1 {
  1183. static decode(reader, position) {
  1184. const $ = new mgb.serialization.fbs.param.ResizeV1();
  1185. $.imode = reader.uint32_(position, 4, 1);
  1186. $.format = reader.uint32_(position, 6, 1);
  1187. return $;
  1188. }
  1189. };
  1190. mgb.serialization.fbs.param.Resize = class Resize {
  1191. static decode(reader, position) {
  1192. const $ = new mgb.serialization.fbs.param.Resize();
  1193. $.imode = reader.uint32_(position, 4, 1);
  1194. $.format = reader.uint32_(position, 6, 1);
  1195. return $;
  1196. }
  1197. };
  1198. mgb.serialization.fbs.param.RemapV0 = class RemapV0 {
  1199. static decode(reader, position) {
  1200. const $ = new mgb.serialization.fbs.param.RemapV0();
  1201. $.imode = reader.uint32_(position, 4, 1);
  1202. $.border_type = reader.uint32_(position, 6, 0);
  1203. $.format = reader.uint32_(position, 8, 1);
  1204. $.scalar = reader.float32_(position, 10, 0);
  1205. return $;
  1206. }
  1207. };
  1208. mgb.serialization.fbs.param.Remap = class Remap {
  1209. static decode(reader, position) {
  1210. const $ = new mgb.serialization.fbs.param.Remap();
  1211. $.imode = reader.uint32_(position, 4, 1);
  1212. $.border_type = reader.uint32_(position, 6, 0);
  1213. $.format = reader.uint32_(position, 8, 1);
  1214. $.scalar = reader.float32_(position, 10, 0);
  1215. return $;
  1216. }
  1217. };
  1218. mgb.serialization.fbs.param.Convolution3D = class Convolution3D {
  1219. static decode(reader, position) {
  1220. const $ = new mgb.serialization.fbs.param.Convolution3D();
  1221. $.mode = reader.uint32_(position, 4, 0);
  1222. $.pad_d = reader.uint32_(position, 6, 0);
  1223. $.pad_h = reader.uint32_(position, 8, 0);
  1224. $.pad_w = reader.uint32_(position, 10, 0);
  1225. $.stride_d = reader.uint32_(position, 12, 1);
  1226. $.stride_h = reader.uint32_(position, 14, 1);
  1227. $.stride_w = reader.uint32_(position, 16, 1);
  1228. $.dilate_d = reader.uint32_(position, 18, 1);
  1229. $.dilate_h = reader.uint32_(position, 20, 1);
  1230. $.dilate_w = reader.uint32_(position, 22, 1);
  1231. $.sparse = reader.uint32_(position, 24, 0);
  1232. $.data_type = reader.uint32_(position, 26, 0);
  1233. $.format = reader.uint32_(position, 28, 0);
  1234. return $;
  1235. }
  1236. };
  1237. mgb.serialization.fbs.param.Conv3DBias = class Conv3DBias {
  1238. static decode(reader, position) {
  1239. const $ = new mgb.serialization.fbs.param.Conv3DBias();
  1240. $.nonlineMode = reader.uint32_(position, 4, 0);
  1241. $.mode = reader.uint32_(position, 6, 0);
  1242. $.pad_d = reader.uint32_(position, 8, 0);
  1243. $.pad_h = reader.uint32_(position, 10, 0);
  1244. $.pad_w = reader.uint32_(position, 12, 0);
  1245. $.stride_d = reader.uint32_(position, 14, 1);
  1246. $.stride_h = reader.uint32_(position, 16, 1);
  1247. $.stride_w = reader.uint32_(position, 18, 0);
  1248. return $;
  1249. }
  1250. };
  1251. mgb.serialization.fbs.param.SeparableConv3D = class SeparableConv3D {
  1252. static decode(reader, position) {
  1253. const $ = new mgb.serialization.fbs.param.SeparableConv3D();
  1254. $.mode = reader.uint32_(position, 4, 0);
  1255. $.borderMode = reader.uint32_(position, 6, 0);
  1256. $.is_symm_kernel = reader.bool_(position, 8, true);
  1257. $.pad_d = reader.uint32_(position, 10, 0);
  1258. $.pad_h = reader.uint32_(position, 12, 0);
  1259. $.pad_w = reader.uint32_(position, 14, 0);
  1260. $.stride_d = reader.uint32_(position, 16, 0);
  1261. $.stride_h = reader.uint32_(position, 18, 1);
  1262. $.stride_w = reader.uint32_(position, 20, 1);
  1263. $.ksize_d = reader.uint32_(position, 22, 0);
  1264. $.ksize_h = reader.uint32_(position, 24, 3);
  1265. $.ksize_w = reader.uint32_(position, 26, 3);
  1266. $.anchor_d = reader.uint32_(position, 28, 0);
  1267. $.anchor_h = reader.uint32_(position, 30, 1);
  1268. $.anchor_w = reader.uint32_(position, 32, 1);
  1269. return $;
  1270. }
  1271. };
  1272. mgb.serialization.fbs.param.TopK = class TopK {
  1273. static decode(reader, position) {
  1274. const $ = new mgb.serialization.fbs.param.TopK();
  1275. $.mode = reader.uint32_(position, 4, 0);
  1276. return $;
  1277. }
  1278. };
  1279. mgb.serialization.fbs.param.RelayoutFormatV0 = class RelayoutFormatV0 {
  1280. static decode(reader, position) {
  1281. const $ = new mgb.serialization.fbs.param.RelayoutFormatV0();
  1282. $.mode = reader.uint32_(position, 4, 0);
  1283. return $;
  1284. }
  1285. };
  1286. mgb.serialization.fbs.param.RelayoutFormat = class RelayoutFormat {
  1287. static decode(reader, position) {
  1288. const $ = new mgb.serialization.fbs.param.RelayoutFormat();
  1289. $.mode = reader.uint32_(position, 4, 0);
  1290. $.oc = reader.uint32_(position, 6, 0);
  1291. $.group = reader.uint32_(position, 8, 1);
  1292. return $;
  1293. }
  1294. };
  1295. mgb.serialization.fbs.param.SeparableFilterV0 = class SeparableFilterV0 {
  1296. static decode(reader, position) {
  1297. const $ = new mgb.serialization.fbs.param.SeparableFilterV0();
  1298. $.format = reader.uint32_(position, 4, 0);
  1299. $.borderMode = reader.uint32_(position, 6, 0);
  1300. $.is_symm_kernel = reader.bool_(position, 8, true);
  1301. $.ksize_h = reader.uint32_(position, 10, 3);
  1302. $.ksize_w = reader.uint32_(position, 12, 3);
  1303. $.anchor_h = reader.uint32_(position, 14, 1);
  1304. $.anchor_w = reader.uint32_(position, 16, 1);
  1305. return $;
  1306. }
  1307. };
  1308. mgb.serialization.fbs.param.SeparableFilter = class SeparableFilter {
  1309. static decode(reader, position) {
  1310. const $ = new mgb.serialization.fbs.param.SeparableFilter();
  1311. $.format = reader.uint32_(position, 4, 0);
  1312. $.borderMode = reader.uint32_(position, 6, 0);
  1313. $.is_symm_kernel = reader.bool_(position, 8, true);
  1314. $.ksize_h = reader.uint32_(position, 10, 3);
  1315. $.ksize_w = reader.uint32_(position, 12, 3);
  1316. $.anchor_h = reader.uint32_(position, 14, 1);
  1317. $.anchor_w = reader.uint32_(position, 16, 1);
  1318. return $;
  1319. }
  1320. };
  1321. mgb.serialization.fbs.param.LocalShareV0 = class LocalShareV0 {
  1322. static decode(reader, position) {
  1323. const $ = new mgb.serialization.fbs.param.LocalShareV0();
  1324. $.mode = reader.uint32_(position, 4, 0);
  1325. $.pad_h = reader.uint32_(position, 6, 0);
  1326. $.pad_w = reader.uint32_(position, 8, 0);
  1327. $.stride_h = reader.uint32_(position, 10, 1);
  1328. $.stride_w = reader.uint32_(position, 12, 1);
  1329. $.dilate_h = reader.uint32_(position, 14, 1);
  1330. $.dilate_w = reader.uint32_(position, 16, 1);
  1331. $.spatial_groups_h = reader.uint32_(position, 18, 1);
  1332. $.spatial_groups_w = reader.uint32_(position, 20, 1);
  1333. $.sparse = reader.uint32_(position, 22, 0);
  1334. $.format = reader.uint32_(position, 24, 0);
  1335. $.computeMode = reader.uint32_(position, 26, 0);
  1336. return $;
  1337. }
  1338. };
  1339. mgb.serialization.fbs.param.LocalShare = class LocalShare {
  1340. static decode(reader, position) {
  1341. const $ = new mgb.serialization.fbs.param.LocalShare();
  1342. $.mode = reader.uint32_(position, 4, 0);
  1343. $.pad_h = reader.uint32_(position, 6, 0);
  1344. $.pad_w = reader.uint32_(position, 8, 0);
  1345. $.stride_h = reader.uint32_(position, 10, 1);
  1346. $.stride_w = reader.uint32_(position, 12, 1);
  1347. $.dilate_h = reader.uint32_(position, 14, 1);
  1348. $.dilate_w = reader.uint32_(position, 16, 1);
  1349. $.spatial_groups_h = reader.uint32_(position, 18, 1);
  1350. $.spatial_groups_w = reader.uint32_(position, 20, 1);
  1351. $.sparse = reader.uint32_(position, 22, 0);
  1352. $.format = reader.uint32_(position, 24, 0);
  1353. $.computeMode = reader.uint32_(position, 26, 0);
  1354. return $;
  1355. }
  1356. };
  1357. mgb.serialization.fbs.param.ROIAlignV0 = class ROIAlignV0 {
  1358. static decode(reader, position) {
  1359. const $ = new mgb.serialization.fbs.param.ROIAlignV0();
  1360. $.mode = reader.uint32_(position, 4, 0);
  1361. $.format = reader.uint32_(position, 6, 0);
  1362. $.spatial_scale = reader.float32_(position, 8, 1);
  1363. $.offset = reader.float32_(position, 10, 0);
  1364. $.pooled_height = reader.uint32_(position, 12, 1);
  1365. $.pooled_width = reader.uint32_(position, 14, 1);
  1366. $.sample_height = reader.uint32_(position, 16, 2);
  1367. $.sample_width = reader.uint32_(position, 18, 2);
  1368. return $;
  1369. }
  1370. };
  1371. mgb.serialization.fbs.param.ROIAlign = class ROIAlign {
  1372. static decode(reader, position) {
  1373. const $ = new mgb.serialization.fbs.param.ROIAlign();
  1374. $.mode = reader.uint32_(position, 4, 0);
  1375. $.format = reader.uint32_(position, 6, 0);
  1376. $.spatial_scale = reader.float32_(position, 8, 1);
  1377. $.offset = reader.float32_(position, 10, 0);
  1378. $.pooled_height = reader.uint32_(position, 12, 1);
  1379. $.pooled_width = reader.uint32_(position, 14, 1);
  1380. $.sample_height = reader.uint32_(position, 16, 2);
  1381. $.sample_width = reader.uint32_(position, 18, 2);
  1382. return $;
  1383. }
  1384. };
  1385. mgb.serialization.fbs.param.Correlation = class Correlation {
  1386. static decode(reader, position) {
  1387. const $ = new mgb.serialization.fbs.param.Correlation();
  1388. $.format = reader.uint32_(position, 4, 0);
  1389. $.kernel_size = reader.uint32_(position, 6, 1);
  1390. $.max_displacement = reader.uint32_(position, 8, 1);
  1391. $.stride1 = reader.uint32_(position, 10, 1);
  1392. $.stride2 = reader.uint32_(position, 12, 1);
  1393. $.pad_size = reader.uint32_(position, 14, 0);
  1394. $.is_multiply = reader.bool_(position, 16, true);
  1395. return $;
  1396. }
  1397. };
  1398. mgb.serialization.fbs.param.DeformablePSROIPooling = class DeformablePSROIPooling {
  1399. static decode(reader, position) {
  1400. const $ = new mgb.serialization.fbs.param.DeformablePSROIPooling();
  1401. $.no_trans = reader.bool_(position, 4, true);
  1402. $.spatial_scale = reader.float32_(position, 6, 1);
  1403. $.trans_std = reader.float32_(position, 8, 1);
  1404. $.pooled_h = reader.uint32_(position, 10, 1);
  1405. $.pooled_w = reader.uint32_(position, 12, 1);
  1406. $.part_size = reader.uint32_(position, 14, 1);
  1407. $.sample_per_part = reader.uint32_(position, 16, 1);
  1408. return $;
  1409. }
  1410. };
  1411. mgb.serialization.fbs.param.BatchConvBiasV0 = class BatchConvBiasV0 {
  1412. static decode(reader, position) {
  1413. const $ = new mgb.serialization.fbs.param.BatchConvBiasV0();
  1414. $.nonlineMode = reader.uint32_(position, 4, 0);
  1415. $.mode = reader.uint32_(position, 6, 0);
  1416. $.pad_h = reader.uint32_(position, 8, 0);
  1417. $.pad_w = reader.uint32_(position, 10, 0);
  1418. $.stride_h = reader.uint32_(position, 12, 1);
  1419. $.stride_w = reader.uint32_(position, 14, 1);
  1420. $.dilate_h = reader.uint32_(position, 16, 1);
  1421. $.dilate_w = reader.uint32_(position, 18, 1);
  1422. $.sparse = reader.uint32_(position, 20, 0);
  1423. $.format = reader.uint32_(position, 22, 0);
  1424. $.compute_mode = reader.uint32_(position, 24, 0);
  1425. return $;
  1426. }
  1427. };
  1428. mgb.serialization.fbs.param.BatchConvBias = class BatchConvBias {
  1429. static decode(reader, position) {
  1430. const $ = new mgb.serialization.fbs.param.BatchConvBias();
  1431. $.nonlineMode = reader.uint32_(position, 4, 0);
  1432. $.mode = reader.uint32_(position, 6, 0);
  1433. $.pad_h = reader.uint32_(position, 8, 0);
  1434. $.pad_w = reader.uint32_(position, 10, 0);
  1435. $.stride_h = reader.uint32_(position, 12, 1);
  1436. $.stride_w = reader.uint32_(position, 14, 1);
  1437. $.dilate_h = reader.uint32_(position, 16, 1);
  1438. $.dilate_w = reader.uint32_(position, 18, 1);
  1439. $.sparse = reader.uint32_(position, 20, 0);
  1440. $.format = reader.uint32_(position, 22, 0);
  1441. $.compute_mode = reader.uint32_(position, 24, 0);
  1442. return $;
  1443. }
  1444. };
  1445. mgb.serialization.fbs.param.FakeQuant = class FakeQuant {
  1446. static decode(reader, position) {
  1447. const $ = new mgb.serialization.fbs.param.FakeQuant();
  1448. $.qmin = reader.int32_(position, 4, -2147483648);
  1449. $.qmax = reader.int32_(position, 6, 2147483647);
  1450. return $;
  1451. }
  1452. };
  1453. mgb.serialization.fbs.param.TQT = class TQT {
  1454. static decode(reader, position) {
  1455. const $ = new mgb.serialization.fbs.param.TQT();
  1456. $.qmin = reader.int32_(position, 4, -2147483648);
  1457. $.qmax = reader.int32_(position, 6, 2147483647);
  1458. return $;
  1459. }
  1460. };
  1461. mgb.serialization.fbs.param.LSQ = class LSQ {
  1462. static decode(reader, position) {
  1463. const $ = new mgb.serialization.fbs.param.LSQ();
  1464. $.qmin = reader.int32_(position, 4, -2147483648);
  1465. $.qmax = reader.int32_(position, 6, 2147483647);
  1466. return $;
  1467. }
  1468. };
  1469. mgb.serialization.fbs.param.Fill = class Fill {
  1470. static decode(reader, position) {
  1471. const $ = new mgb.serialization.fbs.param.Fill();
  1472. $.value = reader.float32_(position, 4, 0);
  1473. return $;
  1474. }
  1475. };
  1476. mgb.serialization.fbs.param.CheckNonFinite = class CheckNonFinite {
  1477. static decode(reader, position) {
  1478. const $ = new mgb.serialization.fbs.param.CheckNonFinite();
  1479. $.scale = reader.float32_(position, 4, 1);
  1480. return $;
  1481. }
  1482. };
  1483. mgb.serialization.fbs.param.Padding = class Padding {
  1484. static decode(reader, position) {
  1485. const $ = new mgb.serialization.fbs.param.Padding();
  1486. $.front_offset_dim0 = reader.uint32_(position, 4, 0);
  1487. $.front_offset_dim1 = reader.uint32_(position, 6, 0);
  1488. $.front_offset_dim2 = reader.uint32_(position, 8, 0);
  1489. $.front_offset_dim3 = reader.uint32_(position, 10, 0);
  1490. $.front_offset_dim4 = reader.uint32_(position, 12, 0);
  1491. $.front_offset_dim5 = reader.uint32_(position, 14, 0);
  1492. $.front_offset_dim6 = reader.uint32_(position, 16, 0);
  1493. $.back_offset_dim0 = reader.uint32_(position, 18, 0);
  1494. $.back_offset_dim1 = reader.uint32_(position, 20, 0);
  1495. $.back_offset_dim2 = reader.uint32_(position, 22, 0);
  1496. $.back_offset_dim3 = reader.uint32_(position, 24, 0);
  1497. $.back_offset_dim4 = reader.uint32_(position, 26, 0);
  1498. $.back_offset_dim5 = reader.uint32_(position, 28, 0);
  1499. $.back_offset_dim6 = reader.uint32_(position, 30, 0);
  1500. $.padding_val = reader.float32_(position, 32, 0);
  1501. $.padding_mode = reader.uint32_(position, 34, 2);
  1502. return $;
  1503. }
  1504. };
  1505. mgb.serialization.fbs.param.LayerNorm = class LayerNorm {
  1506. static decode(reader, position) {
  1507. const $ = new mgb.serialization.fbs.param.LayerNorm();
  1508. $.affine = reader.bool_(position, 4, true);
  1509. $.eps = reader.float32_(position, 6, 0.00001);
  1510. $.normalized_dim = reader.uint64_(position, 8, 1n);
  1511. $.normalized_size = reader.uint64_(position, 10, 1n);
  1512. return $;
  1513. }
  1514. };
  1515. mgb.serialization.fbs.param.GroupNorm = class GroupNorm {
  1516. static decode(reader, position) {
  1517. const $ = new mgb.serialization.fbs.param.GroupNorm();
  1518. $.affine = reader.bool_(position, 4, true);
  1519. $.eps = reader.float32_(position, 6, 0.00001);
  1520. $.group = reader.uint32_(position, 8, 1);
  1521. $.format = reader.uint32_(position, 10, 0);
  1522. return $;
  1523. }
  1524. };
  1525. mgb.serialization.fbs.param.Dropout = class Dropout {
  1526. static decode(reader, position) {
  1527. const $ = new mgb.serialization.fbs.param.Dropout();
  1528. $.drop_prob = reader.float32_(position, 4, 0);
  1529. $.seed = reader.uint64_(position, 6, 0n);
  1530. return $;
  1531. }
  1532. };
  1533. mgb.serialization.fbs.param.RNNCell = class RNNCell {
  1534. static decode(reader, position) {
  1535. const $ = new mgb.serialization.fbs.param.RNNCell();
  1536. $.nonlineMode = reader.uint32_(position, 4, 0);
  1537. return $;
  1538. }
  1539. };
  1540. mgb.serialization.fbs.param.RNN = class RNN {
  1541. static decode(reader, position) {
  1542. const $ = new mgb.serialization.fbs.param.RNN();
  1543. $.num_layers = reader.uint32_(position, 4, 1);
  1544. $.bidirectional = reader.bool_(position, 6, false);
  1545. $.bias = reader.bool_(position, 8, true);
  1546. $.hidden_size = reader.uint32_(position, 10, 128);
  1547. $.dropout = reader.float32_(position, 12, 0);
  1548. $.nonlineMode = reader.uint32_(position, 14, 0);
  1549. $.fwd_mode = reader.uint32_(position, 16, 0);
  1550. return $;
  1551. }
  1552. };
  1553. mgb.serialization.fbs.param.LSTM = class LSTM {
  1554. static decode(reader, position) {
  1555. const $ = new mgb.serialization.fbs.param.LSTM();
  1556. $.num_layers = reader.uint32_(position, 4, 1);
  1557. $.bidirectional = reader.bool_(position, 6, false);
  1558. $.bias = reader.bool_(position, 8, true);
  1559. $.hidden_size = reader.uint32_(position, 10, 128);
  1560. $.proj_size = reader.uint32_(position, 12, 0);
  1561. $.dropout = reader.float32_(position, 14, 0);
  1562. $.fwd_mode = reader.uint32_(position, 16, 0);
  1563. return $;
  1564. }
  1565. };
  1566. mgb.serialization.fbs.param.CollectiveCommMode = {
  1567. REDUCE_SUM: 0,
  1568. BROADCAST: 1,
  1569. ALL_GATHER: 2,
  1570. REDUCE_SCATTER_SUM: 3,
  1571. ALL_REDUCE_SUM: 4,
  1572. ALL_REDUCE_MAX: 5,
  1573. ALL_REDUCE_MIN: 6,
  1574. ALL_REDUCE_PROD: 7,
  1575. GATHER: 8,
  1576. SCATTER: 9,
  1577. ALL_TO_ALL: 10
  1578. };
  1579. mgb.serialization.fbs.param.CondExecMarkGradMode = {
  1580. SUM: 0,
  1581. SUM_COND_OUT: 1
  1582. };
  1583. mgb.serialization.fbs.param.CondExecMarkStaticInfer = {
  1584. SHAPE_VALUE: 0,
  1585. SHAPE_ONLY: 1,
  1586. NONE: 2
  1587. };
  1588. mgb.serialization.fbs.param.CondExecMergeMode = {
  1589. EXACT_ONE: 0,
  1590. EXACT_ONE_SAME_SHAPE: 1,
  1591. SUM: 2,
  1592. SUM_COND_OUT: 3
  1593. };
  1594. mgb.serialization.fbs.param.CondExecPredMode = {
  1595. CASE: 0,
  1596. CASE_FALLBACK: 1,
  1597. PIECEWISE: 2
  1598. };
  1599. mgb.serialization.fbs.param.CondExecPredLogicalMode = {
  1600. OR: 0,
  1601. AND: 1,
  1602. XOR: 2,
  1603. NOR: 3,
  1604. NAND: 4,
  1605. XNOR: 5
  1606. };
  1607. mgb.serialization.fbs.param.ExecutionPolicyStrategy = {
  1608. HEURISTIC: 0,
  1609. PROFILE: 1,
  1610. REPRODUCIBLE: 2,
  1611. OPTIMIZED: 3
  1612. };
  1613. mgb.serialization.fbs.param.ExecutionPolicyV0Strategy = {
  1614. HEURISTIC: 0,
  1615. HEURISTIC_REPRODUCIBLE: 1,
  1616. PROFILE: 2,
  1617. PROFILE_REPRODUCIBLE: 3,
  1618. PROFILE_HEURISTIC: 4
  1619. };
  1620. mgb.serialization.fbs.param.DType = class DType {
  1621. static decode(reader, position) {
  1622. const $ = new mgb.serialization.fbs.param.DType();
  1623. $.dtype = reader.int8_(position, 4, 8);
  1624. return $;
  1625. }
  1626. };
  1627. mgb.serialization.fbs.param.PersistentOutputStorage = class PersistentOutputStorage {
  1628. static decode(reader, position) {
  1629. const $ = new mgb.serialization.fbs.param.PersistentOutputStorage();
  1630. $.share_key = reader.int32_(position, 4, -1);
  1631. return $;
  1632. }
  1633. };
  1634. mgb.serialization.fbs.param.OptionalAxis = class OptionalAxis {
  1635. static decode(reader, position) {
  1636. const $ = new mgb.serialization.fbs.param.OptionalAxis();
  1637. $.axis = reader.int32_(position, 4, -1);
  1638. return $;
  1639. }
  1640. };
  1641. mgb.serialization.fbs.param.OptionalAxisV1 = class OptionalAxisV1 {
  1642. static decode(reader, position) {
  1643. const $ = new mgb.serialization.fbs.param.OptionalAxisV1();
  1644. $.axis = reader.int32_(position, 4, 7);
  1645. return $;
  1646. }
  1647. };
  1648. mgb.serialization.fbs.param.ExecutionPolicyV0 = class ExecutionPolicyV0 {
  1649. static decode(reader, position) {
  1650. const $ = new mgb.serialization.fbs.param.ExecutionPolicyV0();
  1651. $.strategy = reader.uint32_(position, 4, 0);
  1652. $.workspace_limit = reader.uint64_(position, 6, 18446744073709552000n);
  1653. return $;
  1654. }
  1655. };
  1656. mgb.serialization.fbs.param.ExecutionPolicy = class ExecutionPolicy {
  1657. static decode(reader, position) {
  1658. const $ = new mgb.serialization.fbs.param.ExecutionPolicy();
  1659. $.strategy = reader.uint32_(position, 4, 1);
  1660. $.workspace_limit = reader.uint64_(position, 6, 18446744073709552000n);
  1661. return $;
  1662. }
  1663. };
  1664. mgb.serialization.fbs.param.AssertEqual = class AssertEqual {
  1665. static decode(reader, position) {
  1666. const $ = new mgb.serialization.fbs.param.AssertEqual();
  1667. $.maxerr = reader.float32_(position, 4, 0.0001);
  1668. $.verbose = reader.bool_(position, 6, false);
  1669. return $;
  1670. }
  1671. };
  1672. mgb.serialization.fbs.param.FpgaConv = class FpgaConv {
  1673. static decode(reader, position) {
  1674. const $ = new mgb.serialization.fbs.param.FpgaConv();
  1675. $.need_output_quantize = reader.bool_(position, 4, false);
  1676. $.need_output_threshold = reader.bool_(position, 6, false);
  1677. $.stride = reader.int32_(position, 8, 1);
  1678. $.input_bit_width = reader.int32_(position, 10, 2);
  1679. $.output_bit_width = reader.int32_(position, 12, 2);
  1680. $.weight_bit_width = reader.int32_(position, 14, 2);
  1681. $.thres0 = reader.int32_(position, 16, 0);
  1682. $.thres1 = reader.int32_(position, 18, 1);
  1683. $.unpool_size = reader.uint32_(position, 20, 4);
  1684. $.direct_size = reader.uint32_(position, 22, 4);
  1685. return $;
  1686. }
  1687. };
  1688. mgb.serialization.fbs.param.CollectiveComm = class CollectiveComm {
  1689. static decode(reader, position) {
  1690. const $ = new mgb.serialization.fbs.param.CollectiveComm();
  1691. $.mode = reader.uint32_(position, 4, 0);
  1692. return $;
  1693. }
  1694. };
  1695. mgb.serialization.fbs.param.FakeSerializedDType = class FakeSerializedDType {
  1696. static decode(/* reader, position */) {
  1697. const $ = new mgb.serialization.fbs.param.FakeSerializedDType();
  1698. return $;
  1699. }
  1700. };
  1701. mgb.serialization.fbs.param.CondExecPred = class CondExecPred {
  1702. static decode(reader, position) {
  1703. const $ = new mgb.serialization.fbs.param.CondExecPred();
  1704. $.mode = reader.uint32_(position, 4, 0);
  1705. $.eps = reader.float32_(position, 6, 0.0001);
  1706. return $;
  1707. }
  1708. };
  1709. mgb.serialization.fbs.param.CondExecPredLogical = class CondExecPredLogical {
  1710. static decode(reader, position) {
  1711. const $ = new mgb.serialization.fbs.param.CondExecPredLogical();
  1712. $.mode = reader.uint32_(position, 4, 0);
  1713. return $;
  1714. }
  1715. };
  1716. mgb.serialization.fbs.param.CondExecMark = class CondExecMark {
  1717. static decode(reader, position) {
  1718. const $ = new mgb.serialization.fbs.param.CondExecMark();
  1719. $.grad_mode = reader.uint32_(position, 4, 0);
  1720. $.static_infer = reader.uint32_(position, 6, 0);
  1721. return $;
  1722. }
  1723. };
  1724. mgb.serialization.fbs.param.CondExecMerge = class CondExecMerge {
  1725. static decode(reader, position) {
  1726. const $ = new mgb.serialization.fbs.param.CondExecMerge();
  1727. $.nr_output = reader.uint32_(position, 4, 1);
  1728. $.mode = reader.uint32_(position, 6, 0);
  1729. return $;
  1730. }
  1731. };
  1732. mgb.serialization.fbs.param.NvOf = class NvOf {
  1733. static decode(reader, position) {
  1734. const $ = new mgb.serialization.fbs.param.NvOf();
  1735. $.precision = reader.uint32_(position, 4, 1);
  1736. return $;
  1737. }
  1738. };
  1739. mgb.serialization.fbs.param.PersistentDTypeScalar = class PersistentDTypeScalar {
  1740. static decode(reader, position) {
  1741. const $ = new mgb.serialization.fbs.param.PersistentDTypeScalar();
  1742. $.dtype = reader.int8(position + 0);
  1743. $.storage = undefined; // not implemented
  1744. return $;
  1745. }
  1746. };
  1747. mgb.serialization.fbs.param.MGBAddUpdate = class MGBAddUpdate {
  1748. static decode(reader, position) {
  1749. const $ = new mgb.serialization.fbs.param.MGBAddUpdate();
  1750. $.alpha = reader.struct(position, 4, mgb.serialization.fbs.param.PersistentDTypeScalar);
  1751. $.beta = reader.struct(position, 6, mgb.serialization.fbs.param.PersistentDTypeScalar);
  1752. $.bias = reader.struct(position, 8, mgb.serialization.fbs.param.PersistentDTypeScalar);
  1753. return $;
  1754. }
  1755. };
  1756. mgb.serialization.fbs.param.Host2DeviceCopy = class Host2DeviceCopy {
  1757. static decode(reader, position) {
  1758. const $ = new mgb.serialization.fbs.param.Host2DeviceCopy();
  1759. $.enable_value_infer = reader.bool_(position, 4, true);
  1760. $.dump_default_value = reader.bool_(position, 6, false);
  1761. $.allow_cpu_mem_fwd = reader.bool_(position, 8, true);
  1762. return $;
  1763. }
  1764. };
  1765. mgb.serialization.fbs.param.Dimshuffle = class Dimshuffle {
  1766. static decode(reader, position) {
  1767. const $ = new mgb.serialization.fbs.param.Dimshuffle();
  1768. $.pattern = reader.array(position, 4, Int32Array);
  1769. $.ndim = reader.uint32_(position, 6, 0);
  1770. return $;
  1771. }
  1772. };
  1773. mgb.serialization.fbs.param.AxisDescMethod = {
  1774. ADD_1: 0,
  1775. REMOVE: 1
  1776. };
  1777. mgb.serialization.fbs.param.AxisDesc = class AxisDesc {
  1778. static decode(reader, position) {
  1779. const $ = new mgb.serialization.fbs.param.AxisDesc();
  1780. $.method = reader.int8(position + 0);
  1781. $.axis = reader.int32(position + 4);
  1782. return $;
  1783. }
  1784. };
  1785. mgb.serialization.fbs.param.AxisAddRemove = class AxisAddRemove {
  1786. static decode(reader, position) {
  1787. const $ = new mgb.serialization.fbs.param.AxisAddRemove();
  1788. $.desc = reader.structs(position, 4, mgb.serialization.fbs.param.AxisDesc);
  1789. return $;
  1790. }
  1791. };
  1792. mgb.serialization.fbs.param.MGBSleep = class MGBSleep {
  1793. static decode(reader, position) {
  1794. const $ = new mgb.serialization.fbs.param.MGBSleep();
  1795. $.device = reader.bool_(position, 4, true);
  1796. $.host = reader.bool_(position, 6, false);
  1797. $.seconds = reader.float64_(position, 8, 0);
  1798. return $;
  1799. }
  1800. };
  1801. mgb.serialization.fbs.param.IndexDescMaskItem = class IndexDescMaskItem {
  1802. static decode(reader, position) {
  1803. const $ = new mgb.serialization.fbs.param.IndexDescMaskItem();
  1804. $.axis = reader.int8(position + 0);
  1805. $.begin = reader.bool(position + 1);
  1806. $.end = reader.bool(position + 2);
  1807. $.step = reader.bool(position + 3);
  1808. $.idx = reader.bool(position + 4);
  1809. return $;
  1810. }
  1811. };
  1812. mgb.serialization.fbs.param.IndexDescMaskDump = class IndexDescMaskDump {
  1813. static decode(reader, position) {
  1814. const $ = new mgb.serialization.fbs.param.IndexDescMaskDump();
  1815. $.items = reader.structs(position, 4, mgb.serialization.fbs.param.IndexDescMaskItem);
  1816. return $;
  1817. }
  1818. };
  1819. mgb.serialization.fbs.param.NMSKeep = class NMSKeep {
  1820. static decode(reader, position) {
  1821. const $ = new mgb.serialization.fbs.param.NMSKeep();
  1822. $.iou_thresh = reader.float32_(position, 4, 0);
  1823. $.max_output = reader.uint32_(position, 6, 0);
  1824. return $;
  1825. }
  1826. };
  1827. mgb.serialization = mgb.serialization || {};
  1828. mgb.serialization.fbs = mgb.serialization.fbs || {};
  1829. mgb.serialization.fbs.v2 = mgb.serialization.fbs.v2 || {};
  1830. mgb.serialization.fbs.v2.CompNode = class CompNode {
  1831. static decode(reader, position) {
  1832. const $ = new mgb.serialization.fbs.v2.CompNode();
  1833. $.logical_locator = reader.string_(position, 4, null);
  1834. return $;
  1835. }
  1836. };
  1837. mgb.serialization.fbs.v2.DefaultTensorFormat = class DefaultTensorFormat {
  1838. static decode(/* reader, position */) {
  1839. const $ = new mgb.serialization.fbs.v2.DefaultTensorFormat();
  1840. return $;
  1841. }
  1842. };
  1843. mgb.serialization.fbs.v2.Image2DPackedTensorFormat = class Image2DPackedTensorFormat {
  1844. static decode(reader, position) {
  1845. const $ = new mgb.serialization.fbs.v2.Image2DPackedTensorFormat();
  1846. $.align_axis = reader.uint8_(position, 4, 0);
  1847. return $;
  1848. }
  1849. };
  1850. mgb.serialization.fbs.v2.LowbitsAlignedTensorFormat = class LowbitsAlignedTensorFormat {
  1851. static decode(reader, position) {
  1852. const $ = new mgb.serialization.fbs.v2.LowbitsAlignedTensorFormat();
  1853. $.size_nbits = reader.uint8_(position, 4, 0);
  1854. $.align_size_in_bits = reader.uint8_(position, 6, 0);
  1855. return $;
  1856. }
  1857. };
  1858. mgb.serialization.fbs.v2.TensorFormat = class {
  1859. static decode(reader, position, type) {
  1860. switch (type) {
  1861. case 1: return mgb.serialization.fbs.v2.DefaultTensorFormat.decode(reader, position);
  1862. case 2: return mgb.serialization.fbs.v2.Image2DPackedTensorFormat.decode(reader, position);
  1863. case 3: return mgb.serialization.fbs.v2.LowbitsAlignedTensorFormat.decode(reader, position);
  1864. default: return undefined;
  1865. }
  1866. }
  1867. };
  1868. mgb.serialization.fbs.v2.Blob = class Blob {
  1869. static decode(reader, position) {
  1870. const $ = new mgb.serialization.fbs.v2.Blob();
  1871. $.data = reader.array(position, 4, Uint8Array);
  1872. return $;
  1873. }
  1874. };
  1875. mgb.serialization.fbs.v2.Tensor = class Tensor {
  1876. static decode(reader, position) {
  1877. const $ = new mgb.serialization.fbs.v2.Tensor();
  1878. $.name = reader.string_(position, 4, null);
  1879. $.shape = reader.array(position, 6, Uint32Array);
  1880. $.comp_node = reader.table(position, 8, mgb.serialization.fbs.v2.CompNode);
  1881. $.dtype = reader.table(position, 10, mgb.serialization.fbs.DType);
  1882. $.format = reader.union(position, 12, mgb.serialization.fbs.v2.TensorFormat);
  1883. $.data = reader.array(position, 16, Uint8Array);
  1884. return $;
  1885. }
  1886. };
  1887. mgb.serialization.fbs.v2.Reserved0 = class Reserved0 {
  1888. static decode(/* reader, position */) {
  1889. const $ = new mgb.serialization.fbs.v2.Reserved0();
  1890. return $;
  1891. }
  1892. };
  1893. mgb.serialization.fbs.v2.DeprecatedParam = class DeprecatedParam {
  1894. static decode(/* reader, position */) {
  1895. const $ = new mgb.serialization.fbs.v2.DeprecatedParam();
  1896. return $;
  1897. }
  1898. };
  1899. mgb.serialization.fbs.v2.OperatorParam = class {
  1900. static decode(reader, position, type) {
  1901. switch (type) {
  1902. case 1: return mgb.serialization.fbs.param.Empty.decode(reader, position);
  1903. case 2: return mgb.serialization.fbs.param.Axis.decode(reader, position);
  1904. case 3: return mgb.serialization.fbs.param.Convolution.decode(reader, position);
  1905. case 4: return mgb.serialization.fbs.param.MaskPropagate.decode(reader, position);
  1906. case 5: return mgb.serialization.fbs.param.ConvPooling.decode(reader, position);
  1907. case 6: return mgb.serialization.fbs.param.ConvBias.decode(reader, position);
  1908. case 7: return mgb.serialization.fbs.param.SeparableConv.decode(reader, position);
  1909. case 8: return mgb.serialization.fbs.param.Images2Neibs.decode(reader, position);
  1910. case 9: return mgb.serialization.fbs.param.Pooling.decode(reader, position);
  1911. case 10: return mgb.serialization.fbs.param.LRN.decode(reader, position);
  1912. case 11: return mgb.serialization.fbs.param.BN.decode(reader, position);
  1913. case 12: return mgb.serialization.fbs.param.ROIPooling.decode(reader, position);
  1914. case 13: return mgb.serialization.fbs.param.WarpPerspective.decode(reader, position);
  1915. case 14: return mgb.serialization.fbs.param.SpatialTfGridGenerator.decode(reader, position);
  1916. case 15: return mgb.serialization.fbs.param.SpatialTfSampler.decode(reader, position);
  1917. case 16: return mgb.serialization.fbs.param.MGBAddUpdate.decode(reader, position);
  1918. case 17: return mgb.serialization.fbs.param.Elemwise.decode(reader, position);
  1919. case 18: return mgb.serialization.fbs.param.ElemwiseMultiType.decode(reader, position);
  1920. case 19: return mgb.serialization.fbs.param.PowC.decode(reader, position);
  1921. case 20: return mgb.serialization.fbs.param.MatrixMul.decode(reader, position);
  1922. case 21: return mgb.serialization.fbs.v2.DeprecatedParam.decode(reader, position);
  1923. case 22: return mgb.serialization.fbs.param.SVD.decode(reader, position);
  1924. case 23: return mgb.serialization.fbs.param.Reduce.decode(reader, position);
  1925. case 24: return mgb.serialization.fbs.param.Cumsum.decode(reader, position);
  1926. case 25: return mgb.serialization.fbs.param.CondTake.decode(reader, position);
  1927. case 26: return mgb.serialization.fbs.param.Argsort.decode(reader, position);
  1928. case 27: return mgb.serialization.fbs.param.IndexingRemap.decode(reader, position);
  1929. case 28: return mgb.serialization.fbs.param.MGBSleep.decode(reader, position);
  1930. case 29: return mgb.serialization.fbs.param.Linspace.decode(reader, position);
  1931. case 30: return mgb.serialization.fbs.param.LinspaceFull.decode(reader, position);
  1932. case 31: return mgb.serialization.fbs.param.Eye.decode(reader, position);
  1933. case 32: return mgb.serialization.fbs.param.UniformRNG.decode(reader, position);
  1934. case 33: return mgb.serialization.fbs.param.GaussianRNG.decode(reader, position);
  1935. case 34: return mgb.serialization.fbs.param.Flip.decode(reader, position);
  1936. case 35: return mgb.serialization.fbs.param.Rotate.decode(reader, position);
  1937. case 36: return mgb.serialization.fbs.param.ROICopy.decode(reader, position);
  1938. case 37: return mgb.serialization.fbs.param.CvtColor.decode(reader, position);
  1939. case 38: return mgb.serialization.fbs.param.WarpAffine.decode(reader, position);
  1940. case 39: return mgb.serialization.fbs.param.GaussianBlur.decode(reader, position);
  1941. case 40: return mgb.serialization.fbs.param.Resize.decode(reader, position);
  1942. case 41: return mgb.serialization.fbs.param.Convolution3D.decode(reader, position);
  1943. case 42: return mgb.serialization.fbs.param.Conv3DBias.decode(reader, position);
  1944. case 43: return mgb.serialization.fbs.param.SeparableConv3D.decode(reader, position);
  1945. case 44: return mgb.serialization.fbs.param.TopK.decode(reader, position);
  1946. case 45: return mgb.serialization.fbs.param.RelayoutFormat.decode(reader, position);
  1947. case 46: return mgb.serialization.fbs.param.SeparableFilter.decode(reader, position);
  1948. case 47: return mgb.serialization.fbs.param.LocalShare.decode(reader, position);
  1949. case 48: return mgb.serialization.fbs.param.ROIAlign.decode(reader, position);
  1950. case 49: return mgb.serialization.fbs.param.DeformablePSROIPooling.decode(reader, position);
  1951. case 50: return mgb.serialization.fbs.param.BatchConvBias.decode(reader, position);
  1952. case 51: return mgb.serialization.fbs.param.DType.decode(reader, position);
  1953. case 52: return mgb.serialization.fbs.param.PersistentOutputStorage.decode(reader, position);
  1954. case 53: return mgb.serialization.fbs.param.OptionalAxis.decode(reader, position);
  1955. case 54: return mgb.serialization.fbs.param.OptionalAxisV1.decode(reader, position);
  1956. case 55: return mgb.serialization.fbs.param.ExecutionPolicy.decode(reader, position);
  1957. case 56: return mgb.serialization.fbs.param.AssertEqual.decode(reader, position);
  1958. case 57: return mgb.serialization.fbs.param.FpgaConv.decode(reader, position);
  1959. case 58: return mgb.serialization.fbs.param.CollectiveComm.decode(reader, position);
  1960. case 59: return mgb.serialization.fbs.param.CondExecPred.decode(reader, position);
  1961. case 60: return mgb.serialization.fbs.param.CondExecPredLogical.decode(reader, position);
  1962. case 61: return mgb.serialization.fbs.param.CondExecMark.decode(reader, position);
  1963. case 62: return mgb.serialization.fbs.param.CondExecMerge.decode(reader, position);
  1964. case 63: return mgb.serialization.fbs.param.Host2DeviceCopy.decode(reader, position);
  1965. case 64: return mgb.serialization.fbs.param.Dimshuffle.decode(reader, position);
  1966. case 65: return mgb.serialization.fbs.param.AxisAddRemove.decode(reader, position);
  1967. case 66: return mgb.serialization.fbs.param.IndexDescMaskDump.decode(reader, position);
  1968. case 67: return mgb.serialization.fbs.DType.decode(reader, position);
  1969. case 68: return mgb.serialization.fbs.param.Remap.decode(reader, position);
  1970. case 69: return mgb.serialization.fbs.param.NMSKeep.decode(reader, position);
  1971. case 70: return mgb.serialization.fbs.param.AdaptivePooling.decode(reader, position);
  1972. case 71: return mgb.serialization.fbs.param.NvOf.decode(reader, position);
  1973. case 72: return mgb.serialization.fbs.param.DctChannelSelect.decode(reader, position);
  1974. case 73: return mgb.serialization.fbs.param.FakeQuant.decode(reader, position);
  1975. case 74: return mgb.serialization.fbs.param.TQT.decode(reader, position);
  1976. case 75: return mgb.serialization.fbs.param.Correlation.decode(reader, position);
  1977. case 76: return mgb.serialization.fbs.param.LSQ.decode(reader, position);
  1978. case 77: return mgb.serialization.fbs.param.GammaRNG.decode(reader, position);
  1979. case 78: return mgb.serialization.fbs.param.PoissonRNG.decode(reader, position);
  1980. case 79: return mgb.serialization.fbs.param.PermutationRNG.decode(reader, position);
  1981. case 80: return mgb.serialization.fbs.param.BetaRNG.decode(reader, position);
  1982. case 81: return mgb.serialization.fbs.param.SlidingWindowTranspose.decode(reader, position);
  1983. case 82: return mgb.serialization.fbs.param.Padding.decode(reader, position);
  1984. case 83: return mgb.serialization.fbs.param.ShuffleRNG.decode(reader, position);
  1985. case 84: return mgb.serialization.fbs.param.CheckNonFinite.decode(reader, position);
  1986. case 85: return mgb.serialization.fbs.param.LayerNorm.decode(reader, position);
  1987. case 86: return mgb.serialization.fbs.param.Dropout.decode(reader, position);
  1988. case 87: return mgb.serialization.fbs.param.RNNCell.decode(reader, position);
  1989. case 88: return mgb.serialization.fbs.param.RNN.decode(reader, position);
  1990. case 89: return mgb.serialization.fbs.param.LSTM.decode(reader, position);
  1991. case 90: return mgb.serialization.fbs.param.Softmax.decode(reader, position);
  1992. case 91: return mgb.serialization.fbs.param.Diag.decode(reader, position);
  1993. case 92: return mgb.serialization.fbs.param.GroupNorm.decode(reader, position);
  1994. case 93: return mgb.serialization.fbs.param.Fill.decode(reader, position);
  1995. default: return undefined;
  1996. }
  1997. }
  1998. };
  1999. mgb.serialization.fbs.v2.Operator = class Operator {
  2000. static decode(reader, position) {
  2001. const $ = new mgb.serialization.fbs.v2.Operator();
  2002. $.type = reader.string_(position, 4, null);
  2003. $.type_id = reader.uint64_(position, 6, 0n);
  2004. $.name = reader.string_(position, 8, null);
  2005. $.param = reader.union(position, 10, mgb.serialization.fbs.v2.OperatorParam);
  2006. $.additional_params = reader.unions(position, 14, mgb.serialization.fbs.v2.OperatorParam);
  2007. $.inputs = reader.array(position, 18, Uint32Array);
  2008. $.outputs = reader.array(position, 20, Uint32Array);
  2009. $.comp_node = reader.tables(position, 22, mgb.serialization.fbs.v2.CompNode);
  2010. $.output_dtype = reader.table(position, 24, mgb.serialization.fbs.DType);
  2011. $.tensors = reader.tables(position, 26, mgb.serialization.fbs.v2.Tensor);
  2012. $.opr_version = reader.uint32_(position, 28, 0);
  2013. $.priority = reader.int32_(position, 30, 0);
  2014. $.custom_data = reader.tables(position, 32, mgb.serialization.fbs.v2.Blob);
  2015. return $;
  2016. }
  2017. };
  2018. mgb.serialization.fbs.v2.Metadata = class Metadata {
  2019. static decode(reader, position) {
  2020. const $ = new mgb.serialization.fbs.v2.Metadata();
  2021. $.is_valid = reader.bool_(position, 4, false);
  2022. $.graph_modified = reader.bool_(position, 6, false);
  2023. $.optimize_options = reader.uint64_(position, 8, 0n);
  2024. $.user_info = reader.string_(position, 10, null);
  2025. return $;
  2026. }
  2027. };
  2028. mgb.serialization.fbs.v2.MiddleTensor = class MiddleTensor {
  2029. static decode(reader, position) {
  2030. const $ = new mgb.serialization.fbs.v2.MiddleTensor();
  2031. $.name = reader.string_(position, 4, null);
  2032. $.shape = reader.array(position, 6, Uint32Array);
  2033. $.comp_node = reader.table(position, 8, mgb.serialization.fbs.v2.CompNode);
  2034. $.dtype = reader.table(position, 10, mgb.serialization.fbs.DType);
  2035. $.format = reader.union(position, 12, mgb.serialization.fbs.v2.TensorFormat);
  2036. return $;
  2037. }
  2038. };
  2039. mgb.serialization.fbs.v2.OutputVar = class OutputVar {
  2040. static decode(reader, position) {
  2041. const $ = new mgb.serialization.fbs.v2.OutputVar();
  2042. $.compact_id = reader.uint32_(position, 4, 0);
  2043. $.original_id = reader.uint32_(position, 6, 0);
  2044. return $;
  2045. }
  2046. };
  2047. mgb.serialization.fbs.v2.OutputAlias = class OutputAlias {
  2048. static decode(reader, position) {
  2049. const $ = new mgb.serialization.fbs.v2.OutputAlias();
  2050. $.id = reader.uint32_(position, 4, 0);
  2051. $.name = reader.string_(position, 6, null);
  2052. return $;
  2053. }
  2054. };
  2055. mgb.serialization.fbs.v2.Model = class Model {
  2056. static identifier(reader) {
  2057. return reader.identifier === 'mge2';
  2058. }
  2059. static create(reader) {
  2060. return mgb.serialization.fbs.v2.Model.decode(reader, reader.root);
  2061. }
  2062. static decode(reader, position) {
  2063. const $ = new mgb.serialization.fbs.v2.Model();
  2064. $.mge_version = reader.uint32_(position, 4, 0);
  2065. $.model_version = reader.uint32_(position, 6, 0);
  2066. $.oprs = reader.tables(position, 8, mgb.serialization.fbs.v2.Operator);
  2067. $.middle_tensors = reader.tables(position, 10, mgb.serialization.fbs.v2.MiddleTensor);
  2068. $.output_vars_idx = reader.tables(position, 12, mgb.serialization.fbs.v2.OutputVar);
  2069. $.output_alias = reader.tables(position, 14, mgb.serialization.fbs.v2.OutputAlias);
  2070. $.nr_shared_tensor = reader.uint32_(position, 16, 0);
  2071. $.metadata = reader.table(position, 18, mgb.serialization.fbs.v2.Metadata);
  2072. return $;
  2073. }
  2074. };