aionnetwork / AVM

Enabling Java code to run in a blockchain environment
https://theoan.com/
MIT License
49 stars 25 forks source link

[CLOSED] Benchmark for AVM parallel execution #293

Closed aionbot closed 5 years ago

aionbot commented 5 years ago

Issue created by JunhanHu-aion (on Tuesday Oct 23, 2018 at 20:40 GMT)

233 is finished.

We need to examine the performance gain/loss with it . The plan is to benchmark:

  1. Batch of transactions with no dependency
  2. Batch of transactions with strong dependency
  3. How 1 and 2 scale with number of executor threads
aionbot commented 5 years ago

Comment by JunhanHu-aion (on Thursday Oct 25, 2018 at 22:09 GMT)

Results will be updated later

aionbot commented 5 years ago

Comment by JunhanHu-aion (on Friday Oct 26, 2018 at 15:55 GMT)

Result are generated by sending a batch of transactions with size N. The batch takes total time T to finish. The report results are T/N in microsecond (average task finish time, the lower the better)

Machine spec Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz 6 Core 12 Threads

aionbot commented 5 years ago

Comment by JunhanHu-aion (on Friday Oct 26, 2018 at 16:00 GMT)

Value only, independent transactions 1 Thread: 8.931 2 Thread: 3.874 4 Thread: 6.621 8 Thread: 14.062 12 Thread: 19.839

aionbot commented 5 years ago

Comment by JunhanHu-aion (on Friday Oct 26, 2018 at 16:03 GMT)

Contract call Light Workload , independent transactions 1 Thread: 34.891 2 Thread: 15.582 4 Thread: 10.376 8 Thread: 15.777 12 Thread: 22.883

aionbot commented 5 years ago

Comment by JunhanHu-aion (on Friday Oct 26, 2018 at 16:06 GMT)

Contract call Medium Workload, independent transactions 1 Thread: 132.284 2 Thread: 60.577 4 Thread: 38.301 8 Thread: 29.628 12 Thread: 33.631

aionbot commented 5 years ago

Comment by JunhanHu-aion (on Friday Oct 26, 2018 at 16:42 GMT)

Contract call Heavy Workload, independent transactions 1 Thread: 901.318 2 Thread: 493.251 4 Thread: 338.801 8 Thread: 310.105 12 Thread: 318.623

aionbot commented 5 years ago

Comment by JunhanHu-aion (on Friday Oct 26, 2018 at 16:45 GMT)

From the data we gathered, 4 executor threads may be a sweet spot. It helps us gain about 3X performance. Close item.