dmsolr commented on issue #3064: To improve DataCarrier URL: https://github.com/apache/skywalking/issues/3064#issuecomment-511273975 The max capacity is 40k with default initial capacity. It showed that the ArrayList seem like better in ops. And the reused ListedList is better at GC. ``` Benchmark Mode Cnt Score Error Units LinkedArrayBenchmark.testArray thrpt 5 4.226 ± 0.141 ops/s LinkedArrayBenchmark.testArray:·gc.alloc.rate thrpt 5 3688.588 ± 123.565 MB/sec LinkedArrayBenchmark.testArray:·gc.alloc.rate.norm thrpt 5 960569530.094 ± 0.412 B/op LinkedArrayBenchmark.testArray:·gc.churn.PS_Eden_Space thrpt 5 3689.467 ± 122.160 MB/sec LinkedArrayBenchmark.testArray:·gc.churn.PS_Eden_Space.norm thrpt 5 960800434.530 ± 6919898.689 B/op LinkedArrayBenchmark.testArray:·gc.churn.PS_Survivor_Space thrpt 5 2.414 ± 0.083 MB/sec LinkedArrayBenchmark.testArray:·gc.churn.PS_Survivor_Space.norm thrpt 5 628721.758 ± 27005.282 B/op LinkedArrayBenchmark.testArray:·gc.count thrpt 5 1171.000 counts LinkedArrayBenchmark.testArray:·gc.time thrpt 5 3409.000 ms LinkedArrayBenchmark.testLinked thrpt 5 2.530 ± 0.199 ops/s LinkedArrayBenchmark.testLinked:·gc.alloc.rate thrpt 5 4415.469 ± 343.995 MB/sec LinkedArrayBenchmark.testLinked:·gc.alloc.rate.norm thrpt 5 1920000016.994 ± 2.142 B/op LinkedArrayBenchmark.testLinked:·gc.churn.PS_Eden_Space thrpt 5 4413.416 ± 363.896 MB/sec LinkedArrayBenchmark.testLinked:·gc.churn.PS_Eden_Space.norm thrpt 5 1919071368.455 ± 13928128.077 B/op LinkedArrayBenchmark.testLinked:·gc.churn.PS_Survivor_Space thrpt 5 10.812 ± 2.017 MB/sec LinkedArrayBenchmark.testLinked:·gc.churn.PS_Survivor_Space.norm thrpt 5 4700483.899 ± 672304.059 B/op LinkedArrayBenchmark.testLinked:·gc.count thrpt 5 1427.000 counts LinkedArrayBenchmark.testLinked:·gc.time thrpt 5 4876.000 ms LinkedArrayBenchmark.testReusedLinked thrpt 5 1.518 ± 0.097 ops/s LinkedArrayBenchmark.testReusedLinked:·gc.alloc.rate thrpt 5 2651.785 ± 172.025 MB/sec LinkedArrayBenchmark.testReusedLinked:·gc.alloc.rate.norm thrpt 5 1920000059.360 ± 3.100 B/op LinkedArrayBenchmark.testReusedLinked:·gc.churn.PS_Eden_Space thrpt 5 2650.719 ± 169.556 MB/sec LinkedArrayBenchmark.testReusedLinked:·gc.churn.PS_Eden_Space.norm thrpt 5 1919234867.000 ± 1870669.782 B/op LinkedArrayBenchmark.testReusedLinked:·gc.churn.PS_Survivor_Space thrpt 5 6.504 ± 0.385 MB/sec LinkedArrayBenchmark.testReusedLinked:·gc.churn.PS_Survivor_Space.norm thrpt 5 4709853.867 ± 261297.898 B/op LinkedArrayBenchmark.testReusedLinked:·gc.count thrpt 5 874.000 counts LinkedArrayBenchmark.testReusedLinked:·gc.time thrpt 5 3068.000 ms ``` This part tests default capacity and the max size of List is 1000. ``` Benchmark Mode Cnt Score Error Units LinkedArrayBenchmark.testArrayCap1000 thrpt 5 178893.020 ± 4902.711 ops/s LinkedArrayBenchmark.testArrayCap1000:·gc.alloc.rate thrpt 5 6429.991 ± 176.611 MB/sec LinkedArrayBenchmark.testArrayCap1000:·gc.alloc.rate.norm thrpt 5 39576.000 ± 0.001 B/op LinkedArrayBenchmark.testArrayCap1000:·gc.churn.PS_Eden_Space thrpt 5 6430.657 ± 167.713 MB/sec LinkedArrayBenchmark.testArrayCap1000:·gc.churn.PS_Eden_Space.norm thrpt 5 39580.205 ± 202.041 B/op LinkedArrayBenchmark.testArrayCap1000:·gc.churn.PS_Survivor_Space thrpt 5 0.918 ± 0.089 MB/sec LinkedArrayBenchmark.testArrayCap1000:·gc.churn.PS_Survivor_Space.norm thrpt 5 5.652 ± 0.402 B/op LinkedArrayBenchmark.testArrayCap1000:·gc.count thrpt 5 1992.000 counts LinkedArrayBenchmark.testArrayCap1000:·gc.time thrpt 5 1454.000 ms LinkedArrayBenchmark.testLinkedCap1000 thrpt 5 101902.597 ± 3000.098 ops/s LinkedArrayBenchmark.testLinkedCap1000:·gc.alloc.rate thrpt 5 4548.896 ± 133.477 MB/sec LinkedArrayBenchmark.testLinkedCap1000:·gc.alloc.rate.norm thrpt 5 49152.000 ± 0.001 B/op LinkedArrayBenchmark.testLinkedCap1000:·gc.churn.PS_Eden_Space thrpt 5 4545.109 ± 128.194 MB/sec LinkedArrayBenchmark.testLinkedCap1000:·gc.churn.PS_Eden_Space.norm thrpt 5 49111.248 ± 383.670 B/op LinkedArrayBenchmark.testLinkedCap1000:·gc.churn.PS_Survivor_Space thrpt 5 0.984 ± 0.143 MB/sec LinkedArrayBenchmark.testLinkedCap1000:·gc.churn.PS_Survivor_Space.norm thrpt 5 10.628 ± 1.256 B/op LinkedArrayBenchmark.testLinkedCap1000:·gc.count thrpt 5 1409.000 counts LinkedArrayBenchmark.testLinkedCap1000:·gc.time thrpt 5 1026.000 ms ``` This part tests default capacity and the max size of List is 40000. ``` Benchmark Mode Cnt Score Error Units LinkedArrayBenchmark.testArrayCap40000 thrpt 5 4815.608 ± 131.042 ops/s LinkedArrayBenchmark.testArrayCap40000:·gc.alloc.rate thrpt 5 6689.635 ± 182.186 MB/sec LinkedArrayBenchmark.testArrayCap40000:·gc.alloc.rate.norm thrpt 5 1529496.009 ± 0.001 B/op LinkedArrayBenchmark.testArrayCap40000:·gc.churn.PS_Eden_Space thrpt 5 6710.007 ± 171.817 MB/sec LinkedArrayBenchmark.testArrayCap40000:·gc.churn.PS_Eden_Space.norm thrpt 5 1534157.793 ± 4928.618 B/op LinkedArrayBenchmark.testArrayCap40000:·gc.churn.PS_Survivor_Space thrpt 5 8.790 ± 2.575 MB/sec LinkedArrayBenchmark.testArrayCap40000:·gc.churn.PS_Survivor_Space.norm thrpt 5 2009.990 ± 602.223 B/op LinkedArrayBenchmark.testArrayCap40000:·gc.count thrpt 5 2107.000 counts LinkedArrayBenchmark.testArrayCap40000:·gc.time thrpt 5 2344.000 ms LinkedArrayBenchmark.testLinkedCap40000 thrpt 5 2333.108 ± 127.632 ops/s LinkedArrayBenchmark.testLinkedCap40000:·gc.alloc.rate thrpt 5 4068.227 ± 221.587 MB/sec LinkedArrayBenchmark.testLinkedCap40000:·gc.alloc.rate.norm thrpt 5 1920000.019 ± 0.001 B/op LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Eden_Space thrpt 5 4067.345 ± 228.880 MB/sec LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Eden_Space.norm thrpt 5 1919573.472 ± 4585.263 B/op LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Survivor_Space thrpt 5 10.009 ± 0.305 MB/sec LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Survivor_Space.norm thrpt 5 4724.208 ± 159.694 B/op LinkedArrayBenchmark.testLinkedCap40000:·gc.count thrpt 5 1291.000 counts LinkedArrayBenchmark.testLinkedCap40000:·gc.time thrpt 5 4500.000 ms ``` This part tests different initial capacity. The max length is 40k. ``` Benchmark Mode Cnt Score Error Units LinkedArrayBenchmark.testArrayStart1 thrpt 5 5.261 ± 0.146 ops/s LinkedArrayBenchmark.testArrayStart1:·gc.alloc.rate thrpt 5 4592.112 ± 127.800 MB/sec LinkedArrayBenchmark.testArrayStart1:·gc.alloc.rate.norm thrpt 5 960492136.242 ± 1.133 B/op LinkedArrayBenchmark.testArrayStart1:·gc.churn.PS_Eden_Space thrpt 5 4592.839 ± 119.206 MB/sec LinkedArrayBenchmark.testArrayStart1:·gc.churn.PS_Eden_Space.norm thrpt 5 960646891.934 ± 2116622.955 B/op LinkedArrayBenchmark.testArrayStart1:·gc.churn.PS_Survivor_Space thrpt 5 2.905 ± 0.702 MB/sec LinkedArrayBenchmark.testArrayStart1:·gc.churn.PS_Survivor_Space.norm thrpt 5 607819.797 ± 159351.447 B/op LinkedArrayBenchmark.testArrayStart1:·gc.count thrpt 5 1455.000 counts LinkedArrayBenchmark.testArrayStart1:·gc.time thrpt 5 3681.000 ms LinkedArrayBenchmark.testArrayStart8000 thrpt 5 5.064 ± 0.736 ops/s LinkedArrayBenchmark.testArrayStart8000:·gc.alloc.rate thrpt 5 4420.355 ± 642.394 MB/sec LinkedArrayBenchmark.testArrayStart8000:·gc.alloc.rate.norm thrpt 5 960422112.414 ± 1.208 B/op LinkedArrayBenchmark.testArrayStart8000:·gc.churn.PS_Eden_Space thrpt 5 4419.366 ± 672.306 MB/sec LinkedArrayBenchmark.testArrayStart8000:·gc.churn.PS_Eden_Space.norm thrpt 5 960156844.833 ± 6605602.231 B/op LinkedArrayBenchmark.testArrayStart8000:·gc.churn.PS_Survivor_Space thrpt 5 2.647 ± 0.421 MB/sec LinkedArrayBenchmark.testArrayStart8000:·gc.churn.PS_Survivor_Space.norm thrpt 5 575147.529 ± 37485.847 B/op LinkedArrayBenchmark.testArrayStart8000:·gc.count thrpt 5 1405.000 counts LinkedArrayBenchmark.testArrayStart8000:·gc.time thrpt 5 3436.000 ms LinkedArrayBenchmark.testArrayStart40000 thrpt 5 4.750 ± 1.010 ops/s LinkedArrayBenchmark.testArrayStart40000:·gc.alloc.rate thrpt 5 4144.128 ± 877.022 MB/sec LinkedArrayBenchmark.testArrayStart40000:·gc.alloc.rate.norm thrpt 5 960160049.019 ± 1.766 B/op LinkedArrayBenchmark.testArrayStart40000:·gc.churn.PS_Eden_Space thrpt 5 4144.070 ± 870.832 MB/sec LinkedArrayBenchmark.testArrayStart40000:·gc.churn.PS_Eden_Space.norm thrpt 5 960163090.109 ± 6994322.149 B/op LinkedArrayBenchmark.testArrayStart40000:·gc.churn.PS_Survivor_Space thrpt 5 2.105 ± 0.455 MB/sec LinkedArrayBenchmark.testArrayStart40000:·gc.churn.PS_Survivor_Space.norm thrpt 5 487636.376 ± 28869.393 B/op LinkedArrayBenchmark.testArrayStart40000:·gc.count thrpt 5 1312.000 counts LinkedArrayBenchmark.testArrayStart40000:·gc.time thrpt 5 6420.000 ms LinkedArrayBenchmark.testLinkedCap40000 thrpt 5 2333.108 ± 127.632 ops/s LinkedArrayBenchmark.testLinkedCap40000:·gc.alloc.rate thrpt 5 4068.227 ± 221.587 MB/sec LinkedArrayBenchmark.testLinkedCap40000:·gc.alloc.rate.norm thrpt 5 1920000.019 ± 0.001 B/op LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Eden_Space thrpt 5 4067.345 ± 228.880 MB/sec LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Eden_Space.norm thrpt 5 1919573.472 ± 4585.263 B/op LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Survivor_Space thrpt 5 10.009 ± 0.305 MB/sec LinkedArrayBenchmark.testLinkedCap40000:·gc.churn.PS_Survivor_Space.norm thrpt 5 4724.208 ± 159.694 B/op LinkedArrayBenchmark.testLinkedCap40000:·gc.count thrpt 5 1291.000 counts LinkedArrayBenchmark.testLinkedCap40000:·gc.time thrpt 5 4500.000 ms ```
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
