bench.txt 62 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987
  1. group Root {
  2. class = Root
  3. group DSP Benchmarks {
  4. class = DSPBenchmarks
  5. folder = DSP
  6. group Statistics Benchmarks {
  7. class = Stats
  8. folder = Stats
  9. suite Statistics Benchmarks F32 {
  10. class = StatsF32
  11. folder = StatsF32
  12. ParamList {
  13. NB
  14. Summary NB
  15. Names "NB Samples"
  16. Formula "NB"
  17. }
  18. Pattern INPUT1_F32_ID : InputBench1_f32.txt
  19. Pattern INPUT2_F32_ID : InputBench2_f32.txt
  20. Output OUT_F32_ID : Output
  21. Output OUT_S16_ID : Index
  22. Output TMP_F32_ID : Temp
  23. Params PARAM1_ID = {
  24. A = [16,32,64,128,256]
  25. }
  26. Functions {
  27. Vector maximum:test_max_f32
  28. Vector average:test_mean_f32
  29. Vector minimum:test_min_f32
  30. Vector energy:test_power_f32
  31. Vector root mean square:test_rms_f32
  32. Vector standard deviation:test_std_f32
  33. Vector variance:test_var_f32
  34. Entropy:test_entropy_f32
  35. Vector logsumexp:test_logsumexp_f32
  36. Kullback Leibler divergence:test_kullback_leibler_f32
  37. Vector logsumexp dot product:test_logsumexp_dot_prod_f32
  38. Vector max with no index:test_max_no_idx_f32
  39. } -> PARAM1_ID
  40. }
  41. suite Statistics Benchmarks F64 {
  42. class = StatsF64
  43. folder = StatsF64
  44. ParamList {
  45. NB
  46. Summary NB
  47. Names "NB Samples"
  48. Formula "NB"
  49. }
  50. Pattern INPUT1_F64_ID : InputBench1_f64.txt
  51. Pattern INPUT2_F64_ID : InputBench2_f64.txt
  52. Output OUT_F64_ID : Output
  53. Output OUT_S16_ID : Index
  54. Output TMP_F64_ID : Temp
  55. Params PARAM1_ID = {
  56. A = [16,32,64,128,256]
  57. }
  58. Functions {
  59. Entropy:test_entropy_f64
  60. Kullback Leibler divergence:test_kullback_leibler_f64
  61. } -> PARAM1_ID
  62. }
  63. suite Statistics Benchmarks Q31 {
  64. class = StatsQ31
  65. folder = StatsQ31
  66. ParamList {
  67. NB
  68. Summary NB
  69. Names "NB Samples"
  70. Formula "NB"
  71. }
  72. Pattern INPUT1_Q31_ID : InputBench1_q31.txt
  73. Pattern INPUT2_Q31_ID : InputBench2_q31.txt
  74. Output OUT_Q31_ID : Output
  75. Output OUT_Q63_ID : Output
  76. Output OUT_S16_ID : Index
  77. Output TMP_Q31_ID : Temp
  78. Params PARAM1_ID = {
  79. A = [16,32,64,128,256]
  80. }
  81. Functions {
  82. Vector maximum:test_max_q31
  83. Vector average:test_mean_q31
  84. Vector minimum:test_min_q31
  85. Vector energy:test_power_q31
  86. Vector root mean square:test_rms_q31
  87. Vector standard deviation:test_std_q31
  88. Vector variance:test_var_q31
  89. } -> PARAM1_ID
  90. }
  91. suite Statistics Benchmarks Q15 {
  92. class = StatsQ15
  93. folder = StatsQ15
  94. ParamList {
  95. NB
  96. Summary NB
  97. Names "NB Samples"
  98. Formula "NB"
  99. }
  100. Pattern INPUT1_Q15_ID : InputBench1_q15.txt
  101. Pattern INPUT2_Q15_ID : InputBench2_q15.txt
  102. Output OUT_Q15_ID : Output
  103. Output OUT_Q63_ID : Output
  104. Output OUT_S16_ID : Index
  105. Output TMP_Q15_ID : Temp
  106. Params PARAM1_ID = {
  107. A = [16,32,64,128,256]
  108. }
  109. Functions {
  110. Vector maximum:test_max_q15
  111. Vector average:test_mean_q15
  112. Vector minimum:test_min_q15
  113. Vector energy:test_power_q15
  114. Vector root mean square:test_rms_q15
  115. Vector standard deviation:test_std_q15
  116. Vector variance:test_var_q15
  117. } -> PARAM1_ID
  118. }
  119. suite Statistics Benchmarks Q7 {
  120. class = StatsQ7
  121. folder = StatsQ7
  122. ParamList {
  123. NB
  124. Summary NB
  125. Names "NB Samples"
  126. Formula "NB"
  127. }
  128. Pattern INPUT1_Q7_ID : InputBench1_q7.txt
  129. Pattern INPUT2_Q7_ID : InputBench2_q7.txt
  130. Output OUT_Q7_ID : Output
  131. Output OUT_Q31_ID : Output
  132. Output OUT_S16_ID : Index
  133. Output TMP_Q7_ID : Temp
  134. Params PARAM1_ID = {
  135. A = [16,32,64,128,256]
  136. }
  137. Functions {
  138. Vector maximum:test_max_q7
  139. Vector average:test_mean_q7
  140. Vector minimum:test_min_q7
  141. Vector energy:test_power_q7
  142. } -> PARAM1_ID
  143. }
  144. }
  145. group Basic Maths {
  146. class = BasicBenchmarks
  147. folder = BasicMaths
  148. suite Basic Maths Benchmarks F32 {
  149. class = BasicMathsBenchmarksF32
  150. folder = BasicMathsF32
  151. ParamList {
  152. NB
  153. Summary NB
  154. Names "NB Samples"
  155. Formula "NB"
  156. }
  157. Pattern INPUT1_F32_ID : Input1_f32.txt
  158. Pattern INPUT2_F32_ID : Input2_f32.txt
  159. Output OUT_SAMPLES_F32_ID : Output
  160. Params PARAM1_ID = {
  161. A = [16,32,64,128,256]
  162. }
  163. Functions {
  164. Elementwise multiplication:vec_mult_f32
  165. Vector addition:vec_add_f32
  166. Vector substraction:vec_sub_f32
  167. Elementwise absolute value:vec_abs_f32
  168. Elementwise negation:vec_negate_f32
  169. Elementwise offset:vec_offset_f32
  170. Vector scaling:vec_scale_f32
  171. Dot product:vec_dot_f32
  172. } -> PARAM1_ID
  173. }
  174. suite Basic Maths Benchmarks Q31 {
  175. class = BasicMathsBenchmarksQ31
  176. folder = BasicMathsQ31
  177. ParamList {
  178. NB
  179. Summary NB
  180. Names "NB Samples"
  181. Formula "NB"
  182. }
  183. Pattern INPUT1_Q31_ID : Input1_q31.txt
  184. Pattern INPUT2_Q31_ID : Input2_q31.txt
  185. Output OUT_SAMPLES_Q31_ID : Output
  186. Params PARAM1_ID = {
  187. A = [16,32,64,128,256]
  188. }
  189. Functions {
  190. Elementwise multiplication:vec_mult_q31
  191. Vector addition:vec_add_q31
  192. Vector substraction:vec_sub_q31
  193. Elementwise absolute value:vec_abs_q31
  194. Elementwise negation:vec_negate_q31
  195. Elementwise offset:vec_offset_q31
  196. Vector scaling:vec_scale_q31
  197. Dot product:vec_dot_q31
  198. } -> PARAM1_ID
  199. }
  200. suite Basic Maths Benchmarks Q15 {
  201. class = BasicMathsBenchmarksQ15
  202. folder = BasicMathsQ15
  203. ParamList {
  204. NB
  205. Summary NB
  206. Names "NB Samples"
  207. Formula "NB"
  208. }
  209. Pattern INPUT1_Q15_ID : Input1_q15.txt
  210. Pattern INPUT2_Q15_ID : Input2_q15.txt
  211. Output OUT_SAMPLES_Q15_ID : Output
  212. Params PARAM1_ID = {
  213. A = [16,32,64,128,256]
  214. }
  215. Functions {
  216. Elementwise multiplication:vec_mult_q15
  217. Vector addition:vec_add_q15
  218. Vector substraction:vec_sub_q15
  219. Elementwise absolute value:vec_abs_q15
  220. Elementwise negation:vec_negate_q15
  221. Elementwise offset:vec_offset_q15
  222. Vector scaling:vec_scale_q15
  223. Dot product:vec_dot_q15
  224. } -> PARAM1_ID
  225. }
  226. suite Basic Maths Benchmarks Q7 {
  227. class = BasicMathsBenchmarksQ7
  228. folder = BasicMathsQ7
  229. ParamList {
  230. NB
  231. Summary NB
  232. Names "NB Samples"
  233. Formula "NB"
  234. }
  235. Pattern INPUT1_Q7_ID : Input1_q7.txt
  236. Pattern INPUT2_Q7_ID : Input2_q7.txt
  237. Output OUT_SAMPLES_Q7_ID : Output
  238. Params PARAM1_ID = {
  239. A = [16,32,64,128,256]
  240. }
  241. Functions {
  242. Elementwise multiplication:vec_mult_q7
  243. Vector addition:vec_add_q7
  244. Vector substraction:vec_sub_q7
  245. Elementwise absolute value:vec_abs_q7
  246. Elementwise negation:vec_negate_q7
  247. Elementwise offset:vec_offset_q7
  248. Vector scaling:vec_scale_q7
  249. Dot product:vec_dot_q7
  250. } -> PARAM1_ID
  251. }
  252. }
  253. group Complex Maths {
  254. class = ComplexBenchmarks
  255. folder = ComplexMaths
  256. suite ComplexMaths Benchmarks F32 {
  257. class = ComplexMathsBenchmarksF32
  258. folder = ComplexMathsF32
  259. ParamList {
  260. NB
  261. Summary NB
  262. Names "NB Samples"
  263. Formula "NB"
  264. }
  265. Pattern INPUT1_F32_ID : Input1_f32.txt
  266. Pattern INPUT2_F32_ID : Input2_f32.txt
  267. Pattern INPUT3_F32_ID : Input3_f32.txt
  268. Output OUT_SAMPLES_F32_ID : Output
  269. Params PARAM1_ID = {
  270. A = [16,32,64,128,256]
  271. }
  272. Functions {
  273. Elementwise conjugate:vec_conj_f32
  274. Complex dot product:vec_dot_prod_f32
  275. Elementwise modulus:vec_mag_f32
  276. Elementwise modulus squared:vec_mag_squared_f32
  277. Elementwise complex multiplication:vec_mult_cmplx_f32
  278. Vector scaling by real number:vec_mult_real_f32
  279. } -> PARAM1_ID
  280. }
  281. suite ComplexMaths Benchmarks Q31 {
  282. class = ComplexMathsBenchmarksQ31
  283. folder = ComplexMathsQ31
  284. ParamList {
  285. NB
  286. Summary NB
  287. Names "NB Samples"
  288. Formula "NB"
  289. }
  290. Pattern INPUT1_Q31_ID : Input1_q31.txt
  291. Pattern INPUT2_Q31_ID : Input2_q31.txt
  292. Pattern INPUT3_Q31_ID : Input3_q31.txt
  293. Output OUT_SAMPLES_Q31_ID : Output
  294. Params PARAM1_ID = {
  295. A = [16,32,64,128,256]
  296. }
  297. Functions {
  298. Elementwise conjugate:vec_conj_q31
  299. Complex dot product:vec_dot_prod_q31
  300. Elementwise modulus:vec_mag_q31
  301. Elementwise modulus squared:vec_mag_squared_q31
  302. Elementwise complex multiplication:vec_mult_cmplx_q31
  303. Vector scaling by real number:vec_mult_real_q31
  304. } -> PARAM1_ID
  305. }
  306. suite ComplexMaths Benchmarks Q15 {
  307. class = ComplexMathsBenchmarksQ15
  308. folder = ComplexMathsQ15
  309. ParamList {
  310. NB
  311. Summary NB
  312. Names "NB Samples"
  313. Formula "NB"
  314. }
  315. Pattern INPUT1_Q15_ID : Input1_q15.txt
  316. Pattern INPUT2_Q15_ID : Input2_q15.txt
  317. Pattern INPUT3_Q15_ID : Input3_q15.txt
  318. Output OUT_SAMPLES_Q15_ID : Output
  319. Params PARAM1_ID = {
  320. A = [16,32,64,128,256]
  321. }
  322. Functions {
  323. Elementwise conjugate:vec_conj_q15
  324. Complex dot product:vec_dot_prod_q15
  325. Elementwise modulus:vec_mag_q15
  326. Elementwise modulus squared:vec_mag_squared_q15
  327. Elementwise complex multiplication:vec_mult_cmplx_q15
  328. Vector scaling by real number:vec_mult_real_q15
  329. } -> PARAM1_ID
  330. }
  331. }
  332. group Quaternion Maths {
  333. class = QuaternionBenchmarks
  334. folder = QuaternionMaths
  335. suite Quaternion Maths Benchmarks F32 {
  336. class = QuaternionMathsBenchmarksF32
  337. folder = QuaternionMathsF32
  338. ParamList {
  339. NB
  340. Summary NB
  341. Names "NB Samples"
  342. Formula "NB"
  343. }
  344. Pattern INPUT1_F32_ID : Input1_f32.txt
  345. Pattern INPUT2_F32_ID : Input2_f32.txt
  346. Pattern INPUT_ROT_F32_ID : Input7_f32.txt
  347. Output OUT_SAMPLES_F32_ID : Output
  348. Params PARAM1_ID = {
  349. A = [16,32,64,128]
  350. }
  351. Functions {
  352. Quaternion Norm:test_quaternion_norm_f32
  353. Quaternion inverse:test_quaternion_inverse_f32
  354. Quaternion conjugate:test_quaternion_conjugate_f32
  355. Quaternion normalization:test_quaternion_normalize_f32
  356. Quaternion product:test_quaternion_prod_single_f32
  357. Quaternion Elementwise product:test_quaternion_product_f32
  358. Quaternion to rotation:test_quaternion2rotation_f32
  359. Rotation to quaternion:test_rotation2quaternion_f32
  360. } -> PARAM1_ID
  361. }
  362. }
  363. group Filtering {
  364. class = DSPFiltering
  365. folder = Filtering
  366. group FIR {
  367. class = FIR
  368. folder = FIR
  369. suite FIR F32 {
  370. class = FIRF32
  371. folder = FIRF32
  372. ParamList {
  373. NumTaps, NB
  374. Summary NumTaps, NB
  375. Names "Number of taps","Number of samples"
  376. Formula "NumTaps * NB"
  377. }
  378. Pattern SAMPLES1_F32_ID : Samples1_f32.txt
  379. Pattern REFS1_F32_ID : Refs1_f32.txt
  380. Pattern COEFS1_F32_ID : Coefs1_f32.txt
  381. Output OUT_SAMPLES_F32_ID : Output
  382. Output STATE_F32_ID : State
  383. Output ERR_F32_ID : Err
  384. Params PARAM1_ID = {
  385. NumTaps = [16,32,64]
  386. NB = [64,128,256]
  387. }
  388. Functions {
  389. FIR Filter:test_fir_f32
  390. LMS Filter:test_lms_f32
  391. Normalized LMS Filter:test_lms_norm_f32
  392. } -> PARAM1_ID
  393. }
  394. suite FIR Q31 {
  395. class = FIRQ31
  396. folder = FIRQ31
  397. ParamList {
  398. NumTaps, NB
  399. Summary NumTaps, NB
  400. Names "Number of taps","Number of samples"
  401. Formula "NumTaps * NB"
  402. }
  403. Pattern SAMPLES1_Q31_ID : Samples1_q31.txt
  404. Pattern REFS1_Q31_ID : Refs1_q31.txt
  405. Pattern COEFS1_Q31_ID : Coefs1_q31.txt
  406. Output OUT_SAMPLES_Q31_ID : Output
  407. Output STATE_Q31_ID : State
  408. Output ERR_Q31_ID : Err
  409. Params PARAM1_ID = {
  410. NumTaps = [16,32,64]
  411. NB = [64,128,256]
  412. }
  413. Functions {
  414. FIR Filter:test_fir_q31
  415. LMS Filter:test_lms_q31
  416. Normalized LMS Filter:test_lms_norm_q31
  417. } -> PARAM1_ID
  418. }
  419. suite FIR Q15 {
  420. class = FIRQ15
  421. folder = FIRQ15
  422. ParamList {
  423. NumTaps, NB
  424. Summary NumTaps, NB
  425. Names "Number of taps","Number of samples"
  426. Formula "NumTaps * NB"
  427. }
  428. Pattern SAMPLES1_Q15_ID : Samples1_q15.txt
  429. Pattern REFS1_Q15_ID : Refs1_q15.txt
  430. Pattern COEFS1_Q15_ID : Coefs1_q15.txt
  431. Output OUT_SAMPLES_Q15_ID : Output
  432. Output STATE_Q15_ID : State
  433. Output ERR_Q15_ID : Err
  434. Params PARAM1_ID = {
  435. NumTaps = [16,32,64]
  436. NB = [64,128,256]
  437. }
  438. Functions {
  439. FIR Filter:test_fir_q15
  440. LMS Filter:test_lms_q15
  441. Normalized LMS Filter:test_lms_norm_q15
  442. } -> PARAM1_ID
  443. }
  444. suite FIR Q7 {
  445. class = FIRQ7
  446. folder = FIRQ7
  447. ParamList {
  448. NumTaps, NB
  449. Summary NumTaps, NB
  450. Names "Number of taps","Number of samples"
  451. Formula "NumTaps * NB"
  452. }
  453. Pattern SAMPLES1_Q7_ID : Samples1_q7.txt
  454. Pattern REFS1_Q7_ID : Refs1_q7.txt
  455. Pattern COEFS1_Q7_ID : Coefs1_q7.txt
  456. Output OUT_SAMPLES_Q7_ID : Output
  457. Output STATE_Q7_ID : State
  458. Output ERR_Q7_ID : Err
  459. Params PARAM1_ID = {
  460. NumTaps = [16,32,64]
  461. NB = [64,128,256]
  462. }
  463. Functions {
  464. FIR Filter:test_fir_q7
  465. } -> PARAM1_ID
  466. }
  467. }
  468. group Convolutions / Correlations {
  469. class = MISC
  470. folder = MISC
  471. suite Convolutions / Correlations F32 {
  472. class = MISCF32
  473. folder = MISCF32
  474. ParamList {
  475. NBA, NBB
  476. Summary NBA, NBB
  477. Names "Number of samples A,Number of samples B"
  478. Formula "NBA * NBB"
  479. }
  480. Pattern INPUTSA1_F32_ID : InputsA1_f32.txt
  481. Pattern INPUTSB1_F32_ID : InputsB1_f32.txt
  482. Output OUT_SAMPLES_F32_ID : Output
  483. Params PARAM1_ID = {
  484. NBA = [9,16,64]
  485. NBB = [9,16,128]
  486. }
  487. Functions {
  488. Convolution:test_conv_f32
  489. Correlation:test_correlate_f32
  490. } -> PARAM1_ID
  491. }
  492. suite Convolutions / Correlations Q31 {
  493. class = MISCQ31
  494. folder = MISCQ31
  495. ParamList {
  496. NBA, NBB
  497. Summary NBA, NBB
  498. Names "Number of samples A,Number of samples B"
  499. Formula "NBA * NBB"
  500. }
  501. Pattern INPUTSA1_Q31_ID : InputsA1_q31.txt
  502. Pattern INPUTSB1_Q31_ID : InputsB1_q31.txt
  503. Output OUT_SAMPLES_Q31_ID : Output
  504. Params PARAM1_ID = {
  505. NBA = [9,16,64]
  506. NBB = [9,16,128]
  507. }
  508. Functions {
  509. Convolution:test_conv_q31
  510. Correlation:test_correlate_q31
  511. } -> PARAM1_ID
  512. }
  513. suite Convolutions / Correlations Q15 {
  514. class = MISCQ15
  515. folder = MISCQ15
  516. ParamList {
  517. NBA, NBB
  518. Summary NBA, NBB
  519. Names "Number of samples A,Number of samples B"
  520. Formula "NBA * NBB"
  521. }
  522. Pattern INPUTSA1_Q15_ID : InputsA1_q15.txt
  523. Pattern INPUTSB1_Q15_ID : InputsB1_q15.txt
  524. Output OUT_SAMPLES_Q15_ID : Output
  525. Params PARAM1_ID = {
  526. NBA = [9,16,64]
  527. NBB = [9,16,128]
  528. }
  529. Functions {
  530. Convolution:test_conv_q15
  531. Correlation:test_correlate_q15
  532. } -> PARAM1_ID
  533. }
  534. suite Convolutions / Correlations Q7 {
  535. class = MISCQ7
  536. folder = MISCQ7
  537. ParamList {
  538. NBA, NBB
  539. Summary NBA, NBB
  540. Names "Number of samples A,Number of samples B"
  541. Formula "NBA * NBB"
  542. }
  543. Pattern INPUTSA1_Q7_ID : InputsA1_q7.txt
  544. Pattern INPUTSB1_Q7_ID : InputsB1_q7.txt
  545. Output OUT_SAMPLES_Q7_ID : Output
  546. Params PARAM1_ID = {
  547. NBA = [9,16,64]
  548. NBB = [9,16,128]
  549. }
  550. Functions {
  551. Convolution:test_conv_q7
  552. Correlation:test_correlate_q7
  553. } -> PARAM1_ID
  554. }
  555. }
  556. group Decimations / Interpolations {
  557. class = DECIM
  558. folder = DECIM
  559. suite Decimations / Interpolations F32 {
  560. class = DECIMF32
  561. folder = DECIMF32
  562. ParamList {
  563. NumTaps, NB, Factor
  564. Summary NumTaps, NB, Factor
  565. Names "Number of taps","Number of samples","Decimation or Interpolation factor"
  566. Formula "NumTaps * NB * Factor"
  567. }
  568. Pattern SAMPLES1_F32_ID : Samples1_f32.txt
  569. Pattern COEFS1_F32_ID : Coefs1_f32.txt
  570. Output OUT_SAMPLES_F32_ID : Output
  571. Output STATE_F32_ID : State
  572. Params PARAM_DECIM_ID : Params1.txt
  573. Params PARAM_INTERPOL_ID : Params2.txt
  574. Functions {
  575. Decimation:test_fir_decimate_f32 -> PARAM_DECIM_ID
  576. Interpolation:test_fir_interpolate_f32 -> PARAM_INTERPOL_ID
  577. }
  578. }
  579. suite Decimations / Interpolations Q31 {
  580. class = DECIMQ31
  581. folder = DECIMQ31
  582. ParamList {
  583. NumTaps, NB, Factor
  584. Summary NumTaps, NB, Factor
  585. Names "Number of taps","Number of samples","Decimation or Interpolation factor"
  586. Formula "NumTaps * NB * Factor"
  587. }
  588. Pattern SAMPLES1_Q31_ID : Samples1_q31.txt
  589. Pattern COEFS1_Q31_ID : Coefs1_q31.txt
  590. Output OUT_SAMPLES_Q31_ID : Output
  591. Output STATE_Q31_ID : State
  592. Params PARAM_DECIM_ID : Params1.txt
  593. Params PARAM_INTERPOL_ID : Params2.txt
  594. Functions {
  595. Decimation:test_fir_decimate_q31 -> PARAM_DECIM_ID
  596. Interpolation:test_fir_interpolate_q31 -> PARAM_INTERPOL_ID
  597. }
  598. }
  599. suite Decimations / Interpolations Q15 {
  600. class = DECIMQ15
  601. folder = DECIMQ15
  602. ParamList {
  603. NumTaps, NB, Factor
  604. Summary NumTaps, NB, Factor
  605. Names "Number of taps","Number of samples","Decimation or Interpolation factor"
  606. Formula "NumTaps * NB * Factor"
  607. }
  608. Pattern SAMPLES1_Q15_ID : Samples1_q15.txt
  609. Pattern COEFS1_Q15_ID : Coefs1_q15.txt
  610. Output OUT_SAMPLES_Q15_ID : Output
  611. Output STATE_Q15_ID : State
  612. Params PARAM_DECIM_ID : Params1.txt
  613. Params PARAM_INTERPOL_ID : Params2.txt
  614. Functions {
  615. Decimation:test_fir_decimate_q15 -> PARAM_DECIM_ID
  616. Interpolation:test_fir_interpolate_q15 -> PARAM_INTERPOL_ID
  617. }
  618. }
  619. }
  620. group BiQuads {
  621. class = BIQUAD
  622. folder = BIQUAD
  623. suite BiQuads F32 {
  624. class = BIQUADF32
  625. folder = BIQUADF32
  626. ParamList {
  627. NumStages, NB
  628. Summary NumStages, NB
  629. Names "Number of stages","Number of samples"
  630. Formula "NumStages * NB"
  631. }
  632. Pattern SAMPLES1_F32_ID : Samples1_f32.txt
  633. Pattern COEFS1_F32_ID : Coefs1_f32.txt
  634. Output OUT_SAMPLES_F32_ID : Output
  635. Output STATE_F32_ID : State
  636. Output NEON_COEFS_F32_ID : NeonCoefs
  637. Params PARAM1_ID = {
  638. NumStages = [1,2,4]
  639. NB = [16,128,256]
  640. }
  641. Functions {
  642. Cascaded BiQuad Filter DF1:test_biquad_cascade_df1_f32
  643. Cascaded BiQuad Filter DF2T:test_biquad_cascade_df2T_f32
  644. Cascaded BiQuad Filter Stereo DF2T:test_biquad_cascade_stereo_df2T_f32
  645. } -> PARAM1_ID
  646. }
  647. suite BiQuads F64 {
  648. class = BIQUADF64
  649. folder = BIQUADF64
  650. ParamList {
  651. NumStages, NB
  652. Summary NumStages, NB
  653. Names "Number of stages","Number of samples"
  654. Formula "NumStages * NB"
  655. }
  656. Pattern SAMPLES1_F64_ID : Samples1_f64.txt
  657. Pattern COEFS1_F64_ID : Coefs1_f64.txt
  658. Output OUT_SAMPLES_F64_ID : Output
  659. Output STATE_F64_ID : State
  660. Params PARAM1_ID = {
  661. NumStages = [1,2,4]
  662. NB = [16,128,256]
  663. }
  664. Functions {
  665. Cascaded BiQuad Filter DF2T:test_biquad_cascade_df2T_f64
  666. } -> PARAM1_ID
  667. }
  668. }
  669. }
  670. group Controller {
  671. class = Controller
  672. folder = Controller
  673. suite Controller F32 {
  674. class = ControllerF32
  675. folder = ControllerF32
  676. ParamList {
  677. NB
  678. Summary NB
  679. Names "Number of samples"
  680. Formula "NB"
  681. }
  682. Pattern SAMPLES_F32_ID : Samples1_f32.txt
  683. Output OUT_SAMPLES_F32_ID : Output
  684. Params PARAM1_ID = {
  685. NB = [64,128,256]
  686. }
  687. Functions {
  688. PID:test_pid_f32
  689. Clarke Transform:test_clarke_f32
  690. Inverse Clarke Transform:test_inv_clarke_f32
  691. Park Transform:test_park_f32
  692. Inverse Park Transform:test_inv_park_f32
  693. Sin Cos:test_sin_cos_f32
  694. } -> PARAM1_ID
  695. }
  696. suite Controller Q31 {
  697. class = ControllerQ31
  698. folder = ControllerQ31
  699. ParamList {
  700. NB
  701. Summary NB
  702. Names "Number of samples"
  703. Formula "NB"
  704. }
  705. Pattern SAMPLES_Q31_ID : Samples1_q31.txt
  706. Output OUT_SAMPLES_Q31_ID : Output
  707. Params PARAM1_ID = {
  708. NB = [64,128,256]
  709. }
  710. Functions {
  711. PID:test_pid_q31
  712. Clarke Transform:test_clarke_q31
  713. Inverse Clarke Transform:test_inv_clarke_q31
  714. Park Transform:test_park_q31
  715. Inverse Park Transform:test_inv_park_q31
  716. Sin Cos:test_sin_cos_q31
  717. } -> PARAM1_ID
  718. }
  719. suite Controller Q15 {
  720. class = ControllerQ15
  721. folder = ControllerQ15
  722. ParamList {
  723. NB
  724. Summary NB
  725. Names "Number of samples"
  726. Formula "NB"
  727. }
  728. Pattern SAMPLES_Q15_ID : Samples1_q15.txt
  729. Output OUT_SAMPLES_Q15_ID : Output
  730. Params PARAM1_ID = {
  731. NB = [64,128,256]
  732. }
  733. Functions {
  734. PID:test_pid_q15
  735. } -> PARAM1_ID
  736. }
  737. }
  738. group Fast Maths {
  739. class = FastMath
  740. folder = FastMath
  741. suite Fast Maths F32 {
  742. class = FastMathF32
  743. folder = FastMathF32
  744. ParamList {
  745. NB
  746. Summary NB
  747. Names "Number of samples"
  748. Formula "NB"
  749. }
  750. Pattern SAMPLES_F32_ID : Samples1_f32.txt
  751. Output OUT_SAMPLES_F32_ID : Output
  752. Params PARAM1_ID = {
  753. NB = [64,128,256]
  754. }
  755. Functions {
  756. Cosine:test_cos_f32
  757. Sine:test_sin_f32
  758. Square Root:test_sqrt_f32
  759. } -> PARAM1_ID
  760. }
  761. suite Fast Maths Q31 {
  762. class = FastMathQ31
  763. folder = FastMathQ31
  764. ParamList {
  765. NB
  766. Summary NB
  767. Names "Number of samples"
  768. Formula "NB"
  769. }
  770. Pattern SAMPLES_Q31_ID : Samples1_q31.txt
  771. Output OUT_SAMPLES_Q31_ID : Output
  772. Params PARAM1_ID = {
  773. NB = [64,128,256]
  774. }
  775. Functions {
  776. Cosine:test_cos_q31
  777. Sine:test_sin_q31
  778. Square Root:test_sqrt_q31
  779. } -> PARAM1_ID
  780. }
  781. suite Fast Maths Q15 {
  782. class = FastMathQ15
  783. folder = FastMathQ15
  784. ParamList {
  785. NB
  786. Summary NB
  787. Names "Number of samples"
  788. Formula "NB"
  789. }
  790. Pattern SAMPLES_Q15_ID : Samples1_q15.txt
  791. Output OUT_SAMPLES_Q15_ID : Output
  792. Params PARAM1_ID = {
  793. NB = [64,128,256]
  794. }
  795. Functions {
  796. Cosine:test_cos_q15
  797. Sine:test_sin_q15
  798. Square Root:test_sqrt_q15
  799. } -> PARAM1_ID
  800. }
  801. }
  802. group Bayes{
  803. class = Bayes
  804. folder = Bayes
  805. suite Bayes F32 {
  806. class = BayesF32
  807. folder = BayesF32
  808. ParamList {
  809. VECDIM,NBCLASSES
  810. Summary VECDIM,NBCLASSES
  811. Names "Vector dimension","Number of classes"
  812. Formula "VECDIM*NBCLASSES"
  813. }
  814. Pattern DIMS2_S16_ID : DimsBench2_s16.txt
  815. Pattern INPUTS2_F32_ID : Inputs2_f32.txt
  816. Pattern PARAMS2_F32_ID : Params2_f32.txt
  817. Pattern PREDICTS2_S16_ID : Predicts2_s16.txt
  818. Output OUT_PROBA_F32_ID : Probas
  819. Output OUT_PREDICT_S16_ID : Predicts
  820. // Must be consistent with the Python script
  821. Params PARAM1_ID = {
  822. VECDIM = [12,14,20]
  823. NBCLASSES = [3,5,4]
  824. }
  825. Functions {
  826. Naive Gaussian Bayes Predictor:test_gaussian_naive_bayes_predict_f32
  827. } -> PARAM1_ID
  828. }
  829. }
  830. group Distance {
  831. class = Distance
  832. folder = Distance
  833. suite Distance F32 {
  834. class = DistanceF32
  835. folder = DistanceF32
  836. ParamList {
  837. NB
  838. Summary NB
  839. Names "NB Samples"
  840. Formula "NB"
  841. }
  842. Pattern INPUTA_F32_ID : InputBenchA1_f32.txt
  843. Pattern INPUTB_F32_ID : InputBenchB1_f32.txt
  844. Pattern INPUTA_PROBA_F32_ID : InputBenchProbaA1_f32.txt
  845. Pattern INPUTB_PROBA_F32_ID : InputBenchProbaB1_f32.txt
  846. Output TMPA_F32_ID : TmpA
  847. Output TMPB_F32_ID : TmpB
  848. Params PARAM1_ID = {
  849. NB = [16,32,64,128,256]
  850. }
  851. Functions {
  852. Bray Curtis distance:test_braycurtis_distance_f32
  853. Canberra distance:test_canberra_distance_f32
  854. Chebyshev distance:test_chebyshev_distance_f32
  855. Cityblock distance:test_cityblock_distance_f32
  856. Correlation distance:test_correlation_distance_f32
  857. Cosine distance:test_cosine_distance_f32
  858. Euclidean distance:test_euclidean_distance_f32
  859. Jensen Shannon distance:test_jensenshannon_distance_f32
  860. Minkowski distance:test_minkowski_distance_f32
  861. } -> PARAM1_ID
  862. }
  863. suite Distance U32 {
  864. class = DistanceU32
  865. folder = DistanceU32
  866. ParamList {
  867. NB
  868. Summary NB
  869. Names "NB Bits"
  870. Formula "NB"
  871. }
  872. Pattern INPUTA_U32_ID : InputBenchA1_u32.txt
  873. Pattern INPUTB_U32_ID : InputBenchB1_u32.txt
  874. Params PARAM1_ID = {
  875. NB = [512, 1024, 2048, 4096, 8192]
  876. }
  877. Functions {
  878. Dice distance:test_dice_distance_u32
  879. Hamming distance:test_hamming_distance_u32
  880. Jaccard distance:test_jaccard_distance_u32
  881. Kulsinski distance:test_kulsinski_distance_u32
  882. Roger Stanimoto distance:test_rogerstanimoto_distance_u32
  883. Russell Rao distance:test_russellrao_distance_u32
  884. Sokal Michener distance:test_sokalmichener_distance_u32
  885. Sokal Sneath distance:test_sokalsneath_distance_u32
  886. Yule distance:test_yule_distance_u32
  887. } -> PARAM1_ID
  888. }
  889. }
  890. group SVM {
  891. class = SVM
  892. folder = SVM
  893. suite SVM F32 {
  894. class = SVMF32
  895. folder = SVMF32
  896. ParamList {
  897. VECDIM,NBVECS
  898. Summary VECDIM,NBVECS
  899. Names "Vector dimension","Number of suppot vectors"
  900. Formula "VECDIM*NBVECS"
  901. }
  902. Pattern INPUT_F32_ID : InputsBench6_f32.txt
  903. Pattern DIMS_LINEAR_S16_ID : DimsLinear6_s16.txt
  904. Pattern PARAMS_LINEAR_F32_ID : ParamsLinear6_f32.txt
  905. Pattern DIMS_POLY_S16_ID : DimsPoly6_s16.txt
  906. Pattern PARAMS_POLY_F32_ID : ParamsPoly6_f32.txt
  907. Pattern DIMS_RBF_S16_ID : DimsRBF6_s16.txt
  908. Pattern PARAMS_RBF_F32_ID : ParamsRBF6_f32.txt
  909. Pattern DIMS_SIGMOID_S16_ID : DimsSigmoid6_s16.txt
  910. Pattern PARAMS_SIGMOID_F32_ID : ParamsSigmoid6_f32.txt
  911. Output OUT_S32_ID : Output
  912. // Must be consistent with the Python script
  913. Params PARAM1_ID = {
  914. VECDIM = [16,32,64]
  915. NBVECS = [8,16,32]
  916. }
  917. Functions {
  918. Linear SVM:test_svm_linear_predict_f32
  919. Polynomial SVM:test_svm_polynomial_predict_f32
  920. RBF SVM:test_svm_rbf_predict_f32
  921. Sigmoid SVM:test_svm_sigmoid_predict_f32
  922. } -> PARAM1_ID
  923. }
  924. }
  925. group Barycenter {
  926. class = Barycenter
  927. suite Barycenter {
  928. class = SupportBarF32
  929. folder = SupportBarF32
  930. ParamList {
  931. NB,VECDIM
  932. Summary NB,VECDIM
  933. Names "Number of samples","Vector dimension"
  934. Formula "NB*VECDIM"
  935. }
  936. Pattern SAMPLES_F32_ID : Samples1_f32.txt
  937. Pattern COEFS_F32_ID : Coefs1_f32.txt
  938. Output OUT_SAMPLES_F32_ID : Output
  939. Params PARAM1_ID = {
  940. NB = [16,64,128]
  941. VECDIM = [5,10,15]
  942. }
  943. Functions {
  944. Barycenter:test_barycenter_f32
  945. } -> PARAM1_ID
  946. }
  947. }
  948. group Support Functions {
  949. class = Support
  950. folder = Support
  951. suite Support Functions F32 {
  952. class = SupportF32
  953. folder = SupportF32
  954. ParamList {
  955. NB
  956. Summary NB
  957. Names "Number of samples"
  958. Formula "NB"
  959. }
  960. Pattern SAMPLES_F32_ID : Samples1_f32.txt
  961. Pattern SAMPLES_Q15_ID : Samples3_q15.txt
  962. Pattern SAMPLES_Q31_ID : Samples4_q31.txt
  963. Pattern SAMPLES_Q7_ID : Samples5_q7.txt
  964. Pattern INPUTS6_F32_ID : Inputs6_f32.txt
  965. Pattern WEIGHTS6_F32_ID : Weights6_f32.txt
  966. Pattern REF6_F32_ID : Ref6_f32.txt
  967. Output OUT_SAMPLES_F32_ID : Output
  968. Params PARAM1_ID = {
  969. NB = [64,128,256]
  970. }
  971. Functions {
  972. Vector Copy:test_copy_f32
  973. Vector Filling:test_fill_f32
  974. Elementwise q15 to f32:test_q15_to_f32
  975. Elementwise q31 to f32:test_q31_to_f32
  976. Elementwise q7 to f32:test_q7_to_f32
  977. Weighted sum:test_weighted_sum_f32
  978. } -> PARAM1_ID
  979. }
  980. suite Support Functions Q31 {
  981. class = SupportQ31
  982. folder = SupportQ31
  983. ParamList {
  984. NB
  985. Summary NB
  986. Names "Number of samples"
  987. Formula "NB"
  988. }
  989. Pattern SAMPLES_Q31_ID : Samples4_q31.txt
  990. Pattern SAMPLES_Q15_ID : Samples3_q15.txt
  991. Pattern SAMPLES_Q7_ID : Samples5_q7.txt
  992. Output OUT_SAMPLES_Q31_ID : Output
  993. Params PARAM1_ID = {
  994. NB = [64,128,256]
  995. }
  996. Functions {
  997. Vector Copy:test_copy_q31
  998. Vector Filling:test_fill_q31
  999. Elementwise q15 to q31:test_q15_to_q31
  1000. Elementwise q7 to q31:test_q7_to_q31
  1001. } -> PARAM1_ID
  1002. }
  1003. suite Support Functions Q15 {
  1004. class = SupportQ15
  1005. folder = SupportQ15
  1006. ParamList {
  1007. NB
  1008. Summary NB
  1009. Names "Number of samples"
  1010. Formula "NB"
  1011. }
  1012. Pattern SAMPLES_Q15_ID : Samples3_q15.txt
  1013. Pattern SAMPLES_Q31_ID : Samples4_q31.txt
  1014. Pattern SAMPLES_Q7_ID : Samples5_q7.txt
  1015. Output OUT_SAMPLES_Q15_ID : Output
  1016. Params PARAM1_ID = {
  1017. NB = [64,128,256]
  1018. }
  1019. Functions {
  1020. Vector Copy:test_copy_q15
  1021. Vector Filling:test_fill_q15
  1022. Elementwise q31 to q15:test_q31_to_q15
  1023. Elementwise q7 to q15:test_q7_to_q15
  1024. } -> PARAM1_ID
  1025. }
  1026. suite Support Functions Q7 {
  1027. class = SupportQ7
  1028. folder = SupportQ7
  1029. ParamList {
  1030. NB
  1031. Summary NB
  1032. Names "Number of samples"
  1033. Formula "NB"
  1034. }
  1035. Pattern SAMPLES_Q7_ID : Samples5_q7.txt
  1036. Pattern SAMPLES_Q31_ID : Samples4_q31.txt
  1037. Pattern SAMPLES_Q15_ID : Samples3_q15.txt
  1038. Output OUT_SAMPLES_Q7_ID : Output
  1039. Params PARAM1_ID = {
  1040. NB = [64,128,256]
  1041. }
  1042. Functions {
  1043. Vector Copy:test_copy_q7
  1044. Vector Filling:test_fill_q7
  1045. Elementwise q31 to q7:test_q31_to_q7
  1046. Elementwise q15 to q7:test_q15_to_q7
  1047. } -> PARAM1_ID
  1048. }
  1049. }
  1050. group Matrix {
  1051. class = Matrix
  1052. folder = Matrix
  1053. group Matrix Operators with one matrix size {
  1054. class = Unary
  1055. folder = Unary
  1056. suite Unary Matrix Operators F32 {
  1057. class = UnaryF32
  1058. folder = UnaryF32
  1059. ParamList {
  1060. NBR,NBC
  1061. Summary NBR,NBC
  1062. Names "Number of rows","Number of columns"
  1063. Formula "NBR*NBC"
  1064. }
  1065. Pattern INPUTA_F32_ID : InputA1_f32.txt
  1066. Pattern INPUTAC_F32_ID : InputAC1_f32.txt
  1067. Pattern INPUTVEC1_F32_ID : InputVec1_f32.txt
  1068. Pattern DIMSCHOLESKY1_DPO_S16_ID : DimsCholeskyDPO1_s16.txt
  1069. Pattern DIMSCHOLESKY1_SDPO_S16_ID : DimsCholeskySDPO1_s16.txt
  1070. Pattern INPUTSCHOLESKY1_DPO_F32_ID : InputCholeskyDPO1_f32.txt
  1071. Pattern INPUTSCHOLESKY1_SDPO_F32_ID : InputCholeskySDPO1_f32.txt
  1072. Pattern REFCHOLESKY1_DPO_F32_ID : RefCholeskyDPO1_f32.txt
  1073. Pattern REFLDLT_D_DPO1_F32_ID : RefLDLT_D_DPO1_f32.txt
  1074. Pattern REFLDLT_LL_DPO1_F32_ID : RefLDLT_LL_DPO1_f32.txt
  1075. Pattern REFLDLT_PERM_DPO1_F32_ID : RefLDLT_PERM_DPO1_s16.txt
  1076. Pattern REFLDLT_D_SDPO1_F32_ID : RefLDLT_D_SDPO1_f32.txt
  1077. Pattern REFLDLT_LL_SDPO1_F32_ID : RefLDLT_LL_SDPO1_f32.txt
  1078. Pattern REFLDLT_PERM_SDPO1_F32_ID : RefLDLT_PERM_SDPO1_s16.txt
  1079. Pattern INPUT_UT_DPO_F32_ID : InputUTDPO1_f32.txt
  1080. Pattern INPUT_LT_DPO_F32_ID : InputLTDPO1_f32.txt
  1081. Pattern INPUT_RNDA_DPO_F32_ID : InputRNDA1_f32.txt
  1082. Pattern REF_UTINV_DPO_F32_ID : Ref_UTINV_DPO1_f32.txt
  1083. Pattern REF_LTINV_DPO_F32_ID : Ref_LTINV_DPO1_f32.txt
  1084. Pattern REF_CHOLINV_DPO_F32_ID : Ref_CHOLINV_DPO1_f32.txt
  1085. Output D_F32_ID : Output
  1086. Output LL_F32_ID : Output
  1087. Output PERM_S16_ID : Output
  1088. Output TMPA_F32_ID : TempA
  1089. Output TMPB_F32_ID : TempB
  1090. Output OUT_F32_ID : Output
  1091. Params PARAM1_ID = {
  1092. NBR = [5,10,40]
  1093. NBC = [5,10,40]
  1094. }
  1095. Params PARAM_CHOLESKY_ID : ParamsCholesky1.txt
  1096. Functions {
  1097. Matrix Scaling:test_mat_scale_f32
  1098. Matrix Inversion:test_mat_inverse_f32
  1099. Matrix Transpose:test_mat_trans_f32
  1100. Matrix Addition:test_mat_add_f32
  1101. Matrix Substraction:test_mat_sub_f32
  1102. Matrix Vector Multiplication:test_mat_vec_mult_f32
  1103. Matrix Complex Transpose:test_mat_cmplx_trans_f32
  1104. Cholesky decomposition:test_mat_cholesky_dpo_f32 -> PARAM_CHOLESKY_ID
  1105. Backward substitution:test_solve_upper_triangular_f32 -> PARAM_CHOLESKY_ID
  1106. Foward substitution:test_solve_lower_triangular_f32 -> PARAM_CHOLESKY_ID
  1107. LDLT decomposition:test_ldlt_decomposition_f32 -> PARAM_CHOLESKY_ID
  1108. } -> PARAM1_ID
  1109. }
  1110. suite Unary Matrix Operators Q31 {
  1111. class = UnaryQ31
  1112. folder = UnaryQ31
  1113. ParamList {
  1114. NBR,NBC
  1115. Summary NBR,NBC
  1116. Names "Number of rows","Number of columns"
  1117. Formula "NBR*NBC"
  1118. }
  1119. Pattern INPUTA_Q31_ID : InputA1_q31.txt
  1120. Pattern INPUTAC_Q31_ID : InputAC1_q31.txt
  1121. Pattern INPUTVEC1_Q31_ID : InputVec1_q31.txt
  1122. Output OUT_Q31_ID : Output
  1123. Params PARAM1_ID = {
  1124. NBR = [5,10,40]
  1125. NBC = [5,10,40]
  1126. }
  1127. Functions {
  1128. Matrix Scaling:test_mat_scale_q31
  1129. Matrix Transpose:test_mat_trans_q31
  1130. Matrix Addition:test_mat_add_q31
  1131. Matrix Substraction:test_mat_sub_q31
  1132. Matrix Vector Multiplication:test_mat_vec_mult_q31
  1133. Matrix Complex Transpose:test_mat_cmplx_trans_q31
  1134. } -> PARAM1_ID
  1135. }
  1136. suite Unary Matrix Operators Q15 {
  1137. class = UnaryQ15
  1138. folder = UnaryQ15
  1139. ParamList {
  1140. NBR,NBC
  1141. Summary NBR,NBC
  1142. Names "Number of rows","Number of columns"
  1143. Formula "NBR*NBC"
  1144. }
  1145. Pattern INPUTA_Q15_ID : InputA1_q15.txt
  1146. Pattern INPUTAC_Q15_ID : InputAC1_q15.txt
  1147. Pattern INPUTVEC1_Q15_ID : InputVec1_q15.txt
  1148. Output OUT_Q15_ID : Output
  1149. Params PARAM1_ID = {
  1150. NBR = [5,10,40]
  1151. NBC = [5,10,40]
  1152. }
  1153. Functions {
  1154. Matrix Scaling:test_mat_scale_q15
  1155. Matrix Transpose:test_mat_trans_q15
  1156. Matrix Addition:test_mat_add_q15
  1157. Matrix Substraction:test_mat_sub_q15
  1158. Matrix Vector Multiplication:test_mat_vec_mult_q15
  1159. Matrix Complex Transpose:test_mat_cmplx_trans_q15
  1160. } -> PARAM1_ID
  1161. }
  1162. suite Unary Matrix Operators Q7 {
  1163. class = UnaryQ7
  1164. folder = UnaryQ7
  1165. ParamList {
  1166. NBR,NBC
  1167. Summary NBR,NBC
  1168. Names "Number of rows","Number of columns"
  1169. Formula "NBR*NBC"
  1170. }
  1171. Pattern INPUTA_Q7_ID : InputA1_q7.txt
  1172. Pattern INPUTVEC1_Q7_ID : InputVec1_q7.txt
  1173. Output OUT_Q7_ID : Output
  1174. Params PARAM1_ID = {
  1175. NBR = [5,10,40]
  1176. NBC = [5,10,40]
  1177. }
  1178. Functions {
  1179. Matrix Transpose:test_mat_trans_q7
  1180. Matrix Vector Multiplication:test_mat_vec_mult_q7
  1181. } -> PARAM1_ID
  1182. }
  1183. suite Unary Matrix Operators F64 {
  1184. class = UnaryF64
  1185. folder = UnaryF64
  1186. ParamList {
  1187. NBR,NBC
  1188. Summary NBR,NBC
  1189. Names "Number of rows","Number of columns"
  1190. Formula "NBR*NBC"
  1191. }
  1192. Pattern INPUTA_F64_ID : InputA1_f64.txt
  1193. Pattern DIMSCHOLESKY1_DPO_S16_ID : DimsCholeskyDPO1_s16.txt
  1194. Pattern DIMSCHOLESKY1_SDPO_S16_ID : DimsCholeskySDPO1_s16.txt
  1195. Pattern INPUTSCHOLESKY1_DPO_F64_ID : InputCholeskyDPO1_f64.txt
  1196. Pattern INPUTSCHOLESKY1_SDPO_F64_ID : InputCholeskySDPO1_f64.txt
  1197. Pattern REFCHOLESKY1_DPO_F64_ID : RefCholeskyDPO1_f64.txt
  1198. Pattern REFLDLT_D_DPO1_F64_ID : RefLDLT_D_DPO1_f64.txt
  1199. Pattern REFLDLT_LL_DPO1_F64_ID : RefLDLT_LL_DPO1_f64.txt
  1200. Pattern REFLDLT_PERM_DPO1_F64_ID : RefLDLT_PERM_DPO1_s16.txt
  1201. Pattern REFLDLT_D_SDPO1_F64_ID : RefLDLT_D_SDPO1_f64.txt
  1202. Pattern REFLDLT_LL_SDPO1_F64_ID : RefLDLT_LL_SDPO1_f64.txt
  1203. Pattern REFLDLT_PERM_SDPO1_F64_ID : RefLDLT_PERM_SDPO1_s16.txt
  1204. Pattern INPUT_UT_DPO_F64_ID : InputUTDPO1_f64.txt
  1205. Pattern INPUT_LT_DPO_F64_ID : InputLTDPO1_f64.txt
  1206. Pattern INPUT_RNDA_DPO_F64_ID : InputRNDA1_f64.txt
  1207. Pattern REF_UTINV_DPO_F64_ID : Ref_UTINV_DPO1_f64.txt
  1208. Pattern REF_LTINV_DPO_F64_ID : Ref_LTINV_DPO1_f64.txt
  1209. Pattern REF_CHOLINV_DPO_F64_ID : Ref_CHOLINV_DPO1_f64.txt
  1210. Output TMPA_F64_ID : TempA
  1211. Output TMPB_F64_ID : TempB
  1212. Output OUT_F64_ID : Output
  1213. Params PARAM1_ID = {
  1214. NBR = [5,10,40]
  1215. NBC = [5,10,40]
  1216. }
  1217. Params PARAM_CHOLESKY_ID : ParamsCholesky1.txt
  1218. Functions {
  1219. Matrix Inversion:test_mat_inverse_f64
  1220. Cholesky decomposition:test_mat_cholesky_dpo_f64 -> PARAM_CHOLESKY_ID
  1221. Backward substitution:test_solve_upper_triangular_f64 -> PARAM_CHOLESKY_ID
  1222. Foward substitution:test_solve_lower_triangular_f64 -> PARAM_CHOLESKY_ID
  1223. } -> PARAM1_ID
  1224. }
  1225. }
  1226. group Matrix Operators with two matrix sizes {
  1227. class = Binary
  1228. folder = Binary
  1229. suite Binary Matrix Operators F32 {
  1230. class = BinaryF32
  1231. folder = BinaryF32
  1232. ParamList {
  1233. NBR,NBI,NBC
  1234. Summary NBR,NBI,NBC
  1235. Names "Number of rows","Inner dimensions","Number of columns"
  1236. Formula "NBR*NBI*NBC"
  1237. }
  1238. Pattern INPUTA_F32_ID : InputA1_f32.txt
  1239. Pattern INPUTB_F32_ID : InputB1_f32.txt
  1240. Pattern INPUTAC_F32_ID : InputAC1_f32.txt
  1241. Pattern INPUTBC_F32_ID : InputBC1_f32.txt
  1242. Output OUT_F32_ID : Output
  1243. Params PARAM1_ID = {
  1244. NBR = [5,10,40]
  1245. NBI = [5,10,40]
  1246. NBC = [5,10,40]
  1247. }
  1248. Functions {
  1249. Matrix Multiplication:test_mat_mult_f32
  1250. Complex Matrix Multiplication:test_mat_cmplx_mult_f32
  1251. } -> PARAM1_ID
  1252. }
  1253. suite Binary Matrix Operators Q31 {
  1254. class = BinaryQ31
  1255. folder = BinaryQ31
  1256. ParamList {
  1257. NBR,NBI,NBC
  1258. Summary NBR,NBI,NBC
  1259. Names "Number of rows","Inner dimensions","Number of columns"
  1260. Formula "NBR*NBI*NBC"
  1261. }
  1262. Pattern INPUTA_Q31_ID : InputA1_q31.txt
  1263. Pattern INPUTB_Q31_ID : InputB1_q31.txt
  1264. Pattern INPUTAC_Q31_ID : InputAC1_q31.txt
  1265. Pattern INPUTBC_Q31_ID : InputBC1_q31.txt
  1266. Output OUT_Q31_ID : Output
  1267. Params PARAM1_ID = {
  1268. NBR = [5,10,40]
  1269. NBI = [5,10,40]
  1270. NBC = [5,10,40]
  1271. }
  1272. Functions {
  1273. Matrix Multiplication:test_mat_mult_q31
  1274. Complex Matrix Multiplication:test_mat_cmplx_mult_q31
  1275. Fast Matrix Multiplication:test_mat_mult_fast_q31
  1276. } -> PARAM1_ID
  1277. }
  1278. suite Binary Matrix Operators Q15 {
  1279. class = BinaryQ15
  1280. folder = BinaryQ15
  1281. ParamList {
  1282. NBR,NBI,NBC
  1283. Summary NBR,NBI,NBC
  1284. Names "Number of rows","Inner dimensions","Number of columns"
  1285. Formula "NBR*NBI*NBC"
  1286. }
  1287. Pattern INPUTA_Q15_ID : InputA1_q15.txt
  1288. Pattern INPUTB_Q15_ID : InputB1_q15.txt
  1289. Pattern INPUTAC_Q15_ID : InputAC1_q15.txt
  1290. Pattern INPUTBC_Q15_ID : InputBC1_q15.txt
  1291. Output OUT_Q15_ID : Output
  1292. Params PARAM1_ID = {
  1293. NBR = [5,10,40]
  1294. NBI = [5,10,40]
  1295. NBC = [5,10,40]
  1296. }
  1297. Functions {
  1298. Matrix Multiplication:test_mat_mult_q15
  1299. Complex Matrix Multiplication:test_mat_cmplx_mult_q15
  1300. Fast Matrix Multiplication:test_mat_mult_fast_q15
  1301. } -> PARAM1_ID
  1302. }
  1303. suite Binary Matrix Operators Q7 {
  1304. class = BinaryQ7
  1305. folder = BinaryQ7
  1306. ParamList {
  1307. NBR,NBI,NBC
  1308. Summary NBR,NBI,NBC
  1309. Names "Number of rows","Inner dimensions","Number of columns"
  1310. Formula "NBR*NBI*NBC"
  1311. }
  1312. Pattern INPUTA_Q7_ID : InputA1_q7.txt
  1313. Pattern INPUTB_Q7_ID : InputB1_q7.txt
  1314. Pattern INPUTAC_Q7_ID : InputAC1_q7.txt
  1315. Pattern INPUTBC_Q7_ID : InputBC1_q7.txt
  1316. Output OUT_Q7_ID : Output
  1317. Params PARAM1_ID = {
  1318. NBR = [5,10,40]
  1319. NBI = [5,10,40]
  1320. NBC = [5,10,40]
  1321. }
  1322. Functions {
  1323. Matrix Multiplication:test_mat_mult_q7
  1324. } -> PARAM1_ID
  1325. }
  1326. }
  1327. }
  1328. group Spectral Transformations {
  1329. class = Transform
  1330. folder = Transform
  1331. suite Spectral Transformations F32 {
  1332. class = TransformF32
  1333. folder = TransformF32
  1334. ParamList {
  1335. NB,IFFT,BITREV
  1336. Summary NB
  1337. Names "Number of samples,Inverse FFT, Bit Reversal"
  1338. Formula "I(NB*log2(NB))"
  1339. }
  1340. Pattern INPUTR_F32_ID : RealInputSamples19_f32.txt
  1341. Pattern INPUTC_F32_ID : ComplexInputSamples_Noisy_512_6_f32.txt
  1342. Output TMP_F32_ID : Temp
  1343. Output OUT_F32_ID : Output
  1344. Output STATE_F32_ID : Output
  1345. Params CFFT_PARAM_ID = {
  1346. NB = [64,128,256]
  1347. IFFT = [0,1]
  1348. REV = [0,1]
  1349. }
  1350. Params CFFT4_PARAM_ID = {
  1351. NB = [16,64,256]
  1352. IFFT = [0,1]
  1353. REV = [0,1]
  1354. }
  1355. Params RFFT_PARAM_ID = {
  1356. NB = [64,128,256]
  1357. IFFT = [0,1]
  1358. REV = [1]
  1359. }
  1360. Params DCT_PARAM_ID = {
  1361. NB = [128,512,2048]
  1362. IFFT = [0]
  1363. REV = [1]
  1364. }
  1365. Functions {
  1366. Complex FFT:test_cfft_f32 -> CFFT_PARAM_ID
  1367. Real FFT:test_rfft_f32 -> RFFT_PARAM_ID
  1368. DCT4:test_dct4_f32 -> DCT_PARAM_ID
  1369. Scalar Radix 4 Complex FFT:test_cfft_radix4_f32 -> CFFT4_PARAM_ID
  1370. Scalar Radix 2 Complex FFT:test_cfft_radix2_f32 -> CFFT_PARAM_ID
  1371. }
  1372. }
  1373. suite Spectral Transformations Q31 {
  1374. class = TransformQ31
  1375. folder = TransformQ31
  1376. ParamList {
  1377. NB,IFFT,BITREV
  1378. Summary NB
  1379. Names "Number of samples,Inverse FFT, Bit Reversal"
  1380. Formula "I(NB*log2(NB))"
  1381. }
  1382. Pattern INPUTR_Q31_ID : RealInputSamples19_q31.txt
  1383. Pattern INPUTC_Q31_ID : ComplexInputSamples_Noisy_512_6_q31.txt
  1384. Output OUT_Q31_ID : Output
  1385. Output STATE_Q31_ID : Output
  1386. Params CFFT_PARAM_ID = {
  1387. NB = [64,128,256]
  1388. IFFT = [0,1]
  1389. REV = [0,1]
  1390. }
  1391. Params CFFT4_PARAM_ID = {
  1392. NB = [16,64,256]
  1393. IFFT = [0,1]
  1394. REV = [0,1]
  1395. }
  1396. Params RFFT_PARAM_ID = {
  1397. NB = [64,128,256]
  1398. IFFT = [0,1]
  1399. REV = [1]
  1400. }
  1401. Params DCT_PARAM_ID = {
  1402. NB = [128,512,2048]
  1403. IFFT = [0]
  1404. REV = [1]
  1405. }
  1406. Functions {
  1407. Complex FFT:test_cfft_q31 -> CFFT_PARAM_ID
  1408. Real FFT:test_rfft_q31 -> RFFT_PARAM_ID
  1409. DCT4:test_dct4_q31 -> DCT_PARAM_ID
  1410. Scalar Radix 4 Complex FFT:test_cfft_radix4_q31 -> CFFT4_PARAM_ID
  1411. Scalar Radix 2 Complex FFT:test_cfft_radix2_q31 -> CFFT_PARAM_ID
  1412. }
  1413. }
  1414. suite Spectral Transformations Q15 {
  1415. class = TransformQ15
  1416. folder = TransformQ15
  1417. ParamList {
  1418. NB,IFFT,BITREV
  1419. Summary NB
  1420. Names "Number of samples,Inverse FFT, Bit Reversal"
  1421. Formula "I(NB*log2(NB))"
  1422. }
  1423. Pattern INPUTR_Q15_ID : RealInputSamples19_q15.txt
  1424. Pattern INPUTC_Q15_ID : ComplexInputSamples_Noisy_512_6_q15.txt
  1425. Output OUT_Q15_ID : Output
  1426. Output STATE_Q15_ID : Output
  1427. Params CFFT_PARAM_ID = {
  1428. NB = [64,128,256]
  1429. IFFT = [0,1]
  1430. REV = [0,1]
  1431. }
  1432. Params CFFT4_PARAM_ID = {
  1433. NB = [16,64,256]
  1434. IFFT = [0,1]
  1435. REV = [0,1]
  1436. }
  1437. Params RFFT_PARAM_ID = {
  1438. NB = [64,128,256]
  1439. IFFT = [0,1]
  1440. REV = [1]
  1441. }
  1442. Params DCT_PARAM_ID = {
  1443. NB = [128,512,2048]
  1444. IFFT = [0]
  1445. REV = [1]
  1446. }
  1447. Functions {
  1448. Complex FFT:test_cfft_q15 -> CFFT_PARAM_ID
  1449. Real FFT:test_rfft_q15 -> RFFT_PARAM_ID
  1450. DCT4:test_dct4_q15 -> DCT_PARAM_ID
  1451. Scalar Radix 4 Complex FFT:test_cfft_radix4_q15 -> CFFT4_PARAM_ID
  1452. Scalar Radix 2 Complex FFT:test_cfft_radix2_q15 -> CFFT_PARAM_ID
  1453. }
  1454. }
  1455. }
  1456. }
  1457. group NN Benchmarks
  1458. {
  1459. class = NNBenchmarks
  1460. folder = NN
  1461. suite Fully Connected Benchmarks {
  1462. class = FullyConnectedBench
  1463. folder = FullyConnected
  1464. ParamList {
  1465. NB
  1466. Summary NB
  1467. Names "Repetition"
  1468. Formula "NB"
  1469. }
  1470. Pattern INPUT13_S8_ID : TestCase_8_8_5_input_13.txt
  1471. Pattern BIAS13_S8_ID : TestCase_8_8_5_bias_13.txt
  1472. Pattern WEIGHT13_S8_ID : TestCase_8_8_5_weights_13.txt
  1473. Pattern REF13_S8_ID : TestCase_8_8_5_output_13.txt
  1474. Output OUTPUT_S8_ID : Output
  1475. Output TEMP_S16_ID : Temp
  1476. Params PARAM1_ID = {
  1477. NB = [10,20,40,50]
  1478. }
  1479. Functions {
  1480. arm_fully_connected_tflite_s8:test_fully_connected_tflite_s8 -> PARAM1_ID
  1481. }
  1482. }
  1483. suite Pooling Benchmarks {
  1484. class = PoolingBench
  1485. folder = Pooling
  1486. ParamList {
  1487. NB
  1488. Summary NB
  1489. Names "Repetition"
  1490. Formula "NB"
  1491. }
  1492. Pattern INPUT1_S8_ID : Input1.txt
  1493. Pattern REF1_S8_ID : Ref1.txt
  1494. Output OUTPUT_S8_ID : Output
  1495. Output TEMP_S8_ID : Temp
  1496. Output TEMPINPUT_S8_ID : TempInput
  1497. Params PARAM1_ID = {
  1498. NB = [1]
  1499. }
  1500. Functions {
  1501. arm_avgpool_s8 Test 1:test_avgpool_s8 -> PARAM1_ID
  1502. }
  1503. }
  1504. }
  1505. group Compiler Benchmarks {
  1506. class = CompilerBenchmarks
  1507. folder = DSP
  1508. group Micro Benchmarks {
  1509. class = MicroBenchmarks
  1510. folder = BasicMaths
  1511. suite MicroBenchmarksF32 {
  1512. class = MicroBenchmarksF32
  1513. folder = BasicMathsF32
  1514. ParamList {
  1515. NB
  1516. Summary NB
  1517. Names "NB Samples"
  1518. Formula "NB"
  1519. }
  1520. Pattern INPUT1_F32_ID : Input1_f32.txt
  1521. Pattern INPUT2_F32_ID : Input2_f32.txt
  1522. Output OUT_SAMPLES_F32_ID : Output
  1523. Params PARAM1_ID = {
  1524. A = [16,32,64,128,256]
  1525. }
  1526. Functions {
  1527. While loop:test_while_f32
  1528. For loop:test_for_f32
  1529. For loop and array:test_array_f32
  1530. } -> PARAM1_ID
  1531. }
  1532. suite MicroBenchmarksQ31 {
  1533. class = MicroBenchmarksQ31
  1534. folder = BasicMathsQ31
  1535. ParamList {
  1536. NB
  1537. Summary NB
  1538. Names "NB Samples"
  1539. Formula "NB"
  1540. }
  1541. Pattern INPUT1_Q31_ID : Input1_q31.txt
  1542. Pattern INPUT2_Q31_ID : Input2_q31.txt
  1543. Output OUT_SAMPLES_Q31_ID : Output
  1544. Params PARAM1_ID = {
  1545. A = [16,32,64,128,256]
  1546. }
  1547. Functions {
  1548. While loop:test_while_q31
  1549. For loop:test_for_q31
  1550. For loop and array:test_array_q31
  1551. } -> PARAM1_ID
  1552. }
  1553. suite MicroBenchmarksQ15 {
  1554. class = MicroBenchmarksQ15
  1555. folder = BasicMathsQ15
  1556. ParamList {
  1557. NB
  1558. Summary NB
  1559. Names "NB Samples"
  1560. Formula "NB"
  1561. }
  1562. Pattern INPUT1_Q15_ID : Input1_q15.txt
  1563. Pattern INPUT2_Q15_ID : Input2_q15.txt
  1564. Output OUT_SAMPLES_Q15_ID : Output
  1565. Params PARAM1_ID = {
  1566. A = [16,32,64,128,256]
  1567. }
  1568. Functions {
  1569. While loop:test_while_q15
  1570. For loop:test_for_q15
  1571. For loop and array:test_array_q15
  1572. } -> PARAM1_ID
  1573. }
  1574. suite MicroBenchmarksQ7 {
  1575. class = MicroBenchmarksQ7
  1576. folder = BasicMathsQ7
  1577. ParamList {
  1578. NB
  1579. Summary NB
  1580. Names "NB Samples"
  1581. Formula "NB"
  1582. }
  1583. Pattern INPUT1_Q7_ID : Input1_q7.txt
  1584. Pattern INPUT2_Q7_ID : Input2_q7.txt
  1585. Output OUT_SAMPLES_Q7_ID : Output
  1586. Params PARAM1_ID = {
  1587. A = [16,32,64,128,256]
  1588. }
  1589. Functions {
  1590. While loop:test_while_q7
  1591. For loop:test_for_q7
  1592. For loop and array:test_array_q7
  1593. } -> PARAM1_ID
  1594. }
  1595. }
  1596. }
  1597. }