libeffects: Extend benchmarks to test up to 24 channels
lvm_benchark and preprocessing_benchmark are now updated to test
up to 24 channels.
Bug: 177072588
Test: lvm_benchmark
Test: preprocessing_benchmark
Change-Id: Ib5d82f71de901224ecd2faf71ebc236978e8a34a
diff --git a/media/libeffects/lvm/benchmarks/lvm_benchmark.cpp b/media/libeffects/lvm/benchmarks/lvm_benchmark.cpp
index ee9da3f..e2e4a85 100644
--- a/media/libeffects/lvm/benchmarks/lvm_benchmark.cpp
+++ b/media/libeffects/lvm/benchmarks/lvm_benchmark.cpp
@@ -41,9 +41,14 @@
constexpr size_t kFrameCount = 2048;
constexpr audio_channel_mask_t kChMasks[] = {
- AUDIO_CHANNEL_OUT_MONO, AUDIO_CHANNEL_OUT_STEREO, AUDIO_CHANNEL_OUT_2POINT1,
- AUDIO_CHANNEL_OUT_QUAD, AUDIO_CHANNEL_OUT_PENTA, AUDIO_CHANNEL_OUT_5POINT1,
- AUDIO_CHANNEL_OUT_6POINT1, AUDIO_CHANNEL_OUT_7POINT1,
+ AUDIO_CHANNEL_INDEX_MASK_1, AUDIO_CHANNEL_INDEX_MASK_2, AUDIO_CHANNEL_INDEX_MASK_3,
+ AUDIO_CHANNEL_INDEX_MASK_4, AUDIO_CHANNEL_INDEX_MASK_5, AUDIO_CHANNEL_INDEX_MASK_6,
+ AUDIO_CHANNEL_INDEX_MASK_7, AUDIO_CHANNEL_INDEX_MASK_8, AUDIO_CHANNEL_INDEX_MASK_9,
+ AUDIO_CHANNEL_INDEX_MASK_10, AUDIO_CHANNEL_INDEX_MASK_11, AUDIO_CHANNEL_INDEX_MASK_12,
+ AUDIO_CHANNEL_INDEX_MASK_13, AUDIO_CHANNEL_INDEX_MASK_14, AUDIO_CHANNEL_INDEX_MASK_15,
+ AUDIO_CHANNEL_INDEX_MASK_16, AUDIO_CHANNEL_INDEX_MASK_17, AUDIO_CHANNEL_INDEX_MASK_18,
+ AUDIO_CHANNEL_INDEX_MASK_19, AUDIO_CHANNEL_INDEX_MASK_20, AUDIO_CHANNEL_INDEX_MASK_21,
+ AUDIO_CHANNEL_INDEX_MASK_22, AUDIO_CHANNEL_INDEX_MASK_23, AUDIO_CHANNEL_INDEX_MASK_24,
};
constexpr size_t kNumChMasks = std::size(kChMasks);
@@ -59,34 +64,98 @@
* -----------------------------------------------------
* Benchmark Time CPU Iterations
* -----------------------------------------------------
- * BM_LVM/2/0 131279 ns 130855 ns 5195
- * BM_LVM/2/1 184814 ns 184219 ns 3799
- * BM_LVM/2/2 91935 ns 91649 ns 7647
- * BM_LVM/2/3 26707 ns 26623 ns 26281
- * BM_LVM/3/0 172130 ns 171562 ns 4085
- * BM_LVM/3/1 192443 ns 191923 ns 3644
- * BM_LVM/3/2 127444 ns 127107 ns 5483
- * BM_LVM/3/3 26811 ns 26730 ns 26163
- * BM_LVM/4/0 223688 ns 223076 ns 3133
- * BM_LVM/4/1 204961 ns 204408 ns 3425
- * BM_LVM/4/2 169162 ns 168708 ns 4143
- * BM_LVM/4/3 37330 ns 37225 ns 18795
- * BM_LVM/5/0 272628 ns 271668 ns 2568
- * BM_LVM/5/1 218487 ns 217883 ns 3212
- * BM_LVM/5/2 211049 ns 210479 ns 3324
- * BM_LVM/5/3 46962 ns 46835 ns 15051
- * BM_LVM/6/0 318881 ns 317734 ns 2216
- * BM_LVM/6/1 231899 ns 231244 ns 3028
- * BM_LVM/6/2 252655 ns 251963 ns 2771
- * BM_LVM/6/3 54944 ns 54794 ns 12799
- * BM_LVM/7/0 366622 ns 365262 ns 1916
- * BM_LVM/7/1 245076 ns 244388 ns 2866
- * BM_LVM/7/2 295105 ns 294304 ns 2379
- * BM_LVM/7/3 63595 ns 63420 ns 11070
- * BM_LVM/8/0 410957 ns 409387 ns 1706
- * BM_LVM/8/1 257824 ns 257098 ns 2723
- * BM_LVM/8/2 342546 ns 341530 ns 2059
- * BM_LVM/8/3 72896 ns 72700 ns 9685
+ * BM_LVM/2/0 62455 ns 62283 ns 11214
+ * BM_LVM/2/1 110086 ns 109751 ns 6350
+ * BM_LVM/2/2 44017 ns 43890 ns 15982
+ * BM_LVM/2/3 21660 ns 21596 ns 32568
+ * BM_LVM/3/0 71925 ns 71698 ns 9745
+ * BM_LVM/3/1 117043 ns 116754 ns 6007
+ * BM_LVM/3/2 48899 ns 48781 ns 14334
+ * BM_LVM/3/3 23607 ns 23540 ns 29739
+ * BM_LVM/4/0 81296 ns 81095 ns 8632
+ * BM_LVM/4/1 122435 ns 122132 ns 5733
+ * BM_LVM/4/2 53744 ns 53612 ns 13068
+ * BM_LVM/4/3 25846 ns 25783 ns 27188
+ * BM_LVM/5/0 98557 ns 98311 ns 7120
+ * BM_LVM/5/1 131626 ns 131269 ns 5296
+ * BM_LVM/5/2 66892 ns 66732 ns 10458
+ * BM_LVM/5/3 31797 ns 31721 ns 22092
+ * BM_LVM/6/0 111880 ns 111596 ns 6278
+ * BM_LVM/6/1 140207 ns 139846 ns 5000
+ * BM_LVM/6/2 75683 ns 75496 ns 9253
+ * BM_LVM/6/3 37669 ns 37571 ns 18663
+ * BM_LVM/7/0 128265 ns 127957 ns 5470
+ * BM_LVM/7/1 149522 ns 149159 ns 4699
+ * BM_LVM/7/2 92024 ns 91798 ns 7631
+ * BM_LVM/7/3 43372 ns 43268 ns 16181
+ * BM_LVM/8/0 141897 ns 141548 ns 4945
+ * BM_LVM/8/1 158062 ns 157661 ns 4438
+ * BM_LVM/8/2 98042 ns 97801 ns 7151
+ * BM_LVM/8/3 49044 ns 48923 ns 14314
+ * BM_LVM/9/0 174692 ns 174228 ns 4026
+ * BM_LVM/9/1 183048 ns 182560 ns 3834
+ * BM_LVM/9/2 131020 ns 130675 ns 5347
+ * BM_LVM/9/3 71102 ns 70915 ns 9801
+ * BM_LVM/10/0 189079 ns 188576 ns 3699
+ * BM_LVM/10/1 187989 ns 187472 ns 3737
+ * BM_LVM/10/2 140093 ns 139717 ns 5007
+ * BM_LVM/10/3 78175 ns 77963 ns 8919
+ * BM_LVM/11/0 207577 ns 207007 ns 3371
+ * BM_LVM/11/1 198186 ns 197640 ns 3535
+ * BM_LVM/11/2 157214 ns 156786 ns 4459
+ * BM_LVM/11/3 85912 ns 85681 ns 8153
+ * BM_LVM/12/0 220861 ns 220265 ns 3169
+ * BM_LVM/12/1 208759 ns 208184 ns 3355
+ * BM_LVM/12/2 165533 ns 165088 ns 4234
+ * BM_LVM/12/3 92616 ns 92364 ns 7528
+ * BM_LVM/13/0 238573 ns 237920 ns 2945
+ * BM_LVM/13/1 219130 ns 218520 ns 3209
+ * BM_LVM/13/2 183193 ns 182692 ns 3830
+ * BM_LVM/13/3 100546 ns 100274 ns 7005
+ * BM_LVM/14/0 254820 ns 254135 ns 2748
+ * BM_LVM/14/1 230161 ns 229530 ns 3049
+ * BM_LVM/14/2 192195 ns 191671 ns 3635
+ * BM_LVM/14/3 107770 ns 107477 ns 6502
+ * BM_LVM/15/0 273695 ns 272954 ns 2531
+ * BM_LVM/15/1 240718 ns 240049 ns 2801
+ * BM_LVM/15/2 220914 ns 220309 ns 3191
+ * BM_LVM/15/3 124321 ns 123978 ns 5664
+ * BM_LVM/16/0 285769 ns 284969 ns 2459
+ * BM_LVM/16/1 251692 ns 250983 ns 2789
+ * BM_LVM/16/2 224554 ns 223917 ns 3132
+ * BM_LVM/16/3 122048 ns 121706 ns 5753
+ * BM_LVM/17/0 310027 ns 309154 ns 2266
+ * BM_LVM/17/1 262008 ns 261259 ns 2681
+ * BM_LVM/17/2 247530 ns 246827 ns 2842
+ * BM_LVM/17/3 129513 ns 129146 ns 5418
+ * BM_LVM/18/0 322755 ns 321844 ns 2173
+ * BM_LVM/18/1 263266 ns 262514 ns 2671
+ * BM_LVM/18/2 257606 ns 256875 ns 2731
+ * BM_LVM/18/3 136550 ns 136164 ns 5129
+ * BM_LVM/19/0 338551 ns 337591 ns 2069
+ * BM_LVM/19/1 275929 ns 275134 ns 2535
+ * BM_LVM/19/2 270331 ns 269554 ns 2596
+ * BM_LVM/19/3 144551 ns 144138 ns 4838
+ * BM_LVM/20/0 352633 ns 351617 ns 1993
+ * BM_LVM/20/1 286607 ns 285713 ns 2371
+ * BM_LVM/20/2 283541 ns 282689 ns 2407
+ * BM_LVM/20/3 152355 ns 151904 ns 4604
+ * BM_LVM/21/0 370557 ns 369456 ns 1889
+ * BM_LVM/21/1 298251 ns 297351 ns 2352
+ * BM_LVM/21/2 296806 ns 295917 ns 2364
+ * BM_LVM/21/3 160212 ns 159735 ns 4330
+ * BM_LVM/22/0 386431 ns 385224 ns 1826
+ * BM_LVM/22/1 308901 ns 307925 ns 2273
+ * BM_LVM/22/2 309077 ns 308140 ns 2274
+ * BM_LVM/22/3 167492 ns 166987 ns 4194
+ * BM_LVM/23/0 404455 ns 403218 ns 1729
+ * BM_LVM/23/1 322026 ns 321014 ns 2187
+ * BM_LVM/23/2 326616 ns 325623 ns 2152
+ * BM_LVM/23/3 175873 ns 175328 ns 4007
+ * BM_LVM/24/0 416949 ns 415676 ns 1684
+ * BM_LVM/24/1 329803 ns 328779 ns 2128
+ * BM_LVM/24/2 337648 ns 336626 ns 2080
+ * BM_LVM/24/3 183192 ns 182634 ns 3824
*******************************************************************/
static void BM_LVM(benchmark::State& state) {
diff --git a/media/libeffects/preprocessing/benchmarks/preprocessing_benchmark.cpp b/media/libeffects/preprocessing/benchmarks/preprocessing_benchmark.cpp
index 694a6c4..9501d4d 100644
--- a/media/libeffects/preprocessing/benchmarks/preprocessing_benchmark.cpp
+++ b/media/libeffects/preprocessing/benchmarks/preprocessing_benchmark.cpp
@@ -25,26 +25,102 @@
* ---------------------------------------------------------------
* Benchmark Time CPU Iterations
* ---------------------------------------------------------------
- * BM_PREPROCESSING/1/0 59836 ns 59655 ns 11732
- * BM_PREPROCESSING/1/1 66848 ns 66642 ns 10554
- * BM_PREPROCESSING/1/2 20726 ns 20655 ns 33822
- * BM_PREPROCESSING/1/3 5093 ns 5076 ns 137897
- * BM_PREPROCESSING/2/0 117040 ns 116670 ns 5996
- * BM_PREPROCESSING/2/1 120600 ns 120225 ns 5845
- * BM_PREPROCESSING/2/2 38460 ns 38330 ns 18190
- * BM_PREPROCESSING/2/3 6294 ns 6274 ns 111488
- * BM_PREPROCESSING/3/0 232272 ns 231528 ns 3025
- * BM_PREPROCESSING/3/1 226346 ns 225628 ns 3117
- * BM_PREPROCESSING/3/2 75442 ns 75227 ns 9104
- * BM_PREPROCESSING/3/3 9782 ns 9750 ns 71805
- * BM_PREPROCESSING/4/0 290388 ns 289426 ns 2389
- * BM_PREPROCESSING/4/1 279394 ns 278498 ns 2522
- * BM_PREPROCESSING/4/2 94029 ns 93759 ns 7307
- * BM_PREPROCESSING/4/3 11487 ns 11450 ns 61129
- * BM_PREPROCESSING/5/0 347736 ns 346580 ns 2020
- * BM_PREPROCESSING/5/1 331853 ns 330788 ns 2122
- * BM_PREPROCESSING/5/2 112594 ns 112268 ns 6105
- * BM_PREPROCESSING/5/3 13254 ns 13212 ns 52972
+ * BM_PREPROCESSING/1/0 48179 ns 48041 ns 12349
+ * BM_PREPROCESSING/1/1 57559 ns 57403 ns 12270
+ * BM_PREPROCESSING/1/2 17524 ns 17466 ns 39982
+ * BM_PREPROCESSING/1/3 2608 ns 2599 ns 268399
+ * BM_PREPROCESSING/2/0 94198 ns 93926 ns 7470
+ * BM_PREPROCESSING/2/1 109196 ns 108899 ns 6459
+ * BM_PREPROCESSING/2/2 34098 ns 33986 ns 20576
+ * BM_PREPROCESSING/2/3 3231 ns 3221 ns 216606
+ * BM_PREPROCESSING/3/0 141532 ns 141132 ns 5030
+ * BM_PREPROCESSING/3/1 161199 ns 160745 ns 4387
+ * BM_PREPROCESSING/3/2 50663 ns 50535 ns 13619
+ * BM_PREPROCESSING/3/3 3967 ns 3955 ns 177005
+ * BM_PREPROCESSING/4/0 187032 ns 186486 ns 3706
+ * BM_PREPROCESSING/4/1 212872 ns 212264 ns 3304
+ * BM_PREPROCESSING/4/2 67649 ns 67476 ns 10128
+ * BM_PREPROCESSING/4/3 4728 ns 4713 ns 148547
+ * BM_PREPROCESSING/5/0 233874 ns 233188 ns 2954
+ * BM_PREPROCESSING/5/1 262798 ns 262052 ns 2680
+ * BM_PREPROCESSING/5/2 84592 ns 84368 ns 8203
+ * BM_PREPROCESSING/5/3 5472 ns 5455 ns 127784
+ * BM_PREPROCESSING/6/0 284777 ns 283911 ns 2468
+ * BM_PREPROCESSING/6/1 315631 ns 314726 ns 2233
+ * BM_PREPROCESSING/6/2 101200 ns 100931 ns 6802
+ * BM_PREPROCESSING/6/3 6152 ns 6133 ns 113951
+ * BM_PREPROCESSING/7/0 327207 ns 326153 ns 2112
+ * BM_PREPROCESSING/7/1 367510 ns 366410 ns 1915
+ * BM_PREPROCESSING/7/2 118574 ns 118250 ns 5795
+ * BM_PREPROCESSING/7/3 6956 ns 6935 ns 100783
+ * BM_PREPROCESSING/8/0 372603 ns 371470 ns 1880
+ * BM_PREPROCESSING/8/1 418882 ns 417625 ns 1685
+ * BM_PREPROCESSING/8/2 136155 ns 135777 ns 4986
+ * BM_PREPROCESSING/8/3 7734 ns 7711 ns 91581
+ * BM_PREPROCESSING/9/0 424795 ns 423464 ns 1657
+ * BM_PREPROCESSING/9/1 469073 ns 467687 ns 1506
+ * BM_PREPROCESSING/9/2 153170 ns 152737 ns 4519
+ * BM_PREPROCESSING/9/3 8393 ns 8363 ns 83603
+ * BM_PREPROCESSING/10/0 472440 ns 470926 ns 1489
+ * BM_PREPROCESSING/10/1 516984 ns 515480 ns 1000
+ * BM_PREPROCESSING/10/2 168802 ns 168348 ns 4097
+ * BM_PREPROCESSING/10/3 9127 ns 9100 ns 76913
+ * BM_PREPROCESSING/11/0 509690 ns 508113 ns 1360
+ * BM_PREPROCESSING/11/1 569076 ns 567390 ns 1310
+ * BM_PREPROCESSING/11/2 185678 ns 185165 ns 3729
+ * BM_PREPROCESSING/11/3 9789 ns 9760 ns 71342
+ * BM_PREPROCESSING/12/0 563858 ns 562108 ns 1270
+ * BM_PREPROCESSING/12/1 619656 ns 617791 ns 1198
+ * BM_PREPROCESSING/12/2 202882 ns 202316 ns 3406
+ * BM_PREPROCESSING/12/3 10610 ns 10579 ns 66287
+ * BM_PREPROCESSING/13/0 602944 ns 601094 ns 1167
+ * BM_PREPROCESSING/13/1 675401 ns 673293 ns 1107
+ * BM_PREPROCESSING/13/2 220677 ns 220051 ns 3131
+ * BM_PREPROCESSING/13/3 11301 ns 11265 ns 62022
+ * BM_PREPROCESSING/14/0 659495 ns 657375 ns 1071
+ * BM_PREPROCESSING/14/1 726551 ns 724295 ns 1024
+ * BM_PREPROCESSING/14/2 238595 ns 237922 ns 2901
+ * BM_PREPROCESSING/14/3 11941 ns 11906 ns 58788
+ * BM_PREPROCESSING/15/0 698377 ns 696134 ns 1014
+ * BM_PREPROCESSING/15/1 772532 ns 770217 ns 960
+ * BM_PREPROCESSING/15/2 253219 ns 252505 ns 2736
+ * BM_PREPROCESSING/15/3 12669 ns 12632 ns 55452
+ * BM_PREPROCESSING/16/0 742054 ns 739708 ns 936
+ * BM_PREPROCESSING/16/1 828029 ns 825484 ns 902
+ * BM_PREPROCESSING/16/2 272419 ns 271658 ns 2545
+ * BM_PREPROCESSING/16/3 13473 ns 13431 ns 52088
+ * BM_PREPROCESSING/17/0 794444 ns 791916 ns 891
+ * BM_PREPROCESSING/17/1 879429 ns 876704 ns 841
+ * BM_PREPROCESSING/17/2 290059 ns 289216 ns 2391
+ * BM_PREPROCESSING/17/3 14257 ns 14210 ns 49425
+ * BM_PREPROCESSING/18/0 852221 ns 849430 ns 839
+ * BM_PREPROCESSING/18/1 931121 ns 928308 ns 799
+ * BM_PREPROCESSING/18/2 307995 ns 307104 ns 2253
+ * BM_PREPROCESSING/18/3 14947 ns 14900 ns 46872
+ * BM_PREPROCESSING/19/0 888752 ns 885893 ns 781
+ * BM_PREPROCESSING/19/1 983398 ns 980285 ns 756
+ * BM_PREPROCESSING/19/2 325669 ns 324705 ns 2132
+ * BM_PREPROCESSING/19/3 15677 ns 15629 ns 44693
+ * BM_PREPROCESSING/20/0 933651 ns 930697 ns 746
+ * BM_PREPROCESSING/20/1 1033396 ns 1030235 ns 713
+ * BM_PREPROCESSING/20/2 342081 ns 341077 ns 2031
+ * BM_PREPROCESSING/20/3 16422 ns 16370 ns 42622
+ * BM_PREPROCESSING/21/0 982521 ns 979388 ns 706
+ * BM_PREPROCESSING/21/1 1085340 ns 1081926 ns 682
+ * BM_PREPROCESSING/21/2 360862 ns 359810 ns 1926
+ * BM_PREPROCESSING/21/3 17161 ns 17107 ns 40885
+ * BM_PREPROCESSING/22/0 1043560 ns 1040219 ns 678
+ * BM_PREPROCESSING/22/1 1137203 ns 1133687 ns 653
+ * BM_PREPROCESSING/22/2 377421 ns 376315 ns 1841
+ * BM_PREPROCESSING/22/3 17903 ns 17847 ns 38984
+ * BM_PREPROCESSING/23/0 1090097 ns 1086523 ns 650
+ * BM_PREPROCESSING/23/1 1199267 ns 1194231 ns 619
+ * BM_PREPROCESSING/23/2 395429 ns 394263 ns 1759
+ * BM_PREPROCESSING/23/3 18879 ns 18818 ns 37242
+ * BM_PREPROCESSING/24/0 1128638 ns 1125076 ns 629
+ * BM_PREPROCESSING/24/1 1239909 ns 1236019 ns 598
+ * BM_PREPROCESSING/24/2 414294 ns 413055 ns 1680
+ * BM_PREPROCESSING/24/3 19583 ns 19521 ns 35771
*******************************************************************/
#include <audio_effects/effect_aec.h>
@@ -79,8 +155,14 @@
};
constexpr size_t kNumEffectUuids = std::size(kEffectUuids);
constexpr audio_channel_mask_t kChMasks[] = {
- AUDIO_CHANNEL_IN_MONO, AUDIO_CHANNEL_IN_STEREO, AUDIO_CHANNEL_IN_2POINT0POINT2,
- AUDIO_CHANNEL_IN_2POINT1POINT2, AUDIO_CHANNEL_IN_6,
+ AUDIO_CHANNEL_INDEX_MASK_1, AUDIO_CHANNEL_INDEX_MASK_2, AUDIO_CHANNEL_INDEX_MASK_3,
+ AUDIO_CHANNEL_INDEX_MASK_4, AUDIO_CHANNEL_INDEX_MASK_5, AUDIO_CHANNEL_INDEX_MASK_6,
+ AUDIO_CHANNEL_INDEX_MASK_7, AUDIO_CHANNEL_INDEX_MASK_8, AUDIO_CHANNEL_INDEX_MASK_9,
+ AUDIO_CHANNEL_INDEX_MASK_10, AUDIO_CHANNEL_INDEX_MASK_11, AUDIO_CHANNEL_INDEX_MASK_12,
+ AUDIO_CHANNEL_INDEX_MASK_13, AUDIO_CHANNEL_INDEX_MASK_14, AUDIO_CHANNEL_INDEX_MASK_15,
+ AUDIO_CHANNEL_INDEX_MASK_16, AUDIO_CHANNEL_INDEX_MASK_17, AUDIO_CHANNEL_INDEX_MASK_18,
+ AUDIO_CHANNEL_INDEX_MASK_19, AUDIO_CHANNEL_INDEX_MASK_20, AUDIO_CHANNEL_INDEX_MASK_21,
+ AUDIO_CHANNEL_INDEX_MASK_22, AUDIO_CHANNEL_INDEX_MASK_23, AUDIO_CHANNEL_INDEX_MASK_24,
};
constexpr size_t kNumChMasks = std::size(kChMasks);