Hi, Here I have attached the JMH benchmark.You can access source code using following link and please note that this is written for my evaluation purpose of two data structures only.
https://github.com/malakaganga/jmh-gc-csl Thanks! On Tue, Jan 26, 2016 at 2:23 PM, Isuru Perera <[email protected]> wrote: > Hi Malaka, > > Great work! Could you please share the JMH benchmark? > > Thanks! > > On Tue, Jan 26, 2016 at 10:05 AM, Ramith Jayasinghe <[email protected]> > wrote: > >> Hi Malaka, >> lets report these findings on architecture group as a investigation we >> did. >> regards >> Ramtih >> >> On Tue, Jan 26, 2016 at 8:16 AM, Malaka Gangananda <[email protected]> >> wrote: >> >>> Hi, >>> >>> While profiling the MB we found out that there is a performance bottle >>> neck in using util.ConcurrentSkipListMap. Because every time size call is >>> made it has to loop through the data structure so it takes O(n) time. But >>> looking at GC ConcurrentHashMap we found out that it only takes constant >>> time (O(1) time) to make the size call.Other operations on GC >>> ConcurrentHashMap are also faster than uti.ConcurrentSkipListMap. >>> >>> Here I have attached JMH Benchmark results which acquired by testing >>> util.ConcurrentSkipListMap vs GC ConcurrentHashMap >>> >>> >>> ConcurrentSkipListMap Vs Goldmansachs Concurre... >>> <https://docs.google.com/a/wso2.com/spreadsheets/d/1y5w1aIDBN89C0ctB83iDOULtYPnB_-3OuGYArd0lbt0/edit?usp=drive_web> >>> >>> >>> Malaka Gangananda >>> Software Engineer Intern >>> mobile:0713564340 >>> [email protected] >>> <[email protected]> >>> >> >> >> >> -- >> Ramith Jayasinghe >> Technical Lead >> WSO2 Inc., http://wso2.com >> lean.enterprise.middleware >> >> E: [email protected] >> P: +94 777542851 >> >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > Isuru Perera > Associate Technical Lead | WSO2, Inc. | http://wso2.com/ > Lean . Enterprise . Middleware > > about.me/chrishantha > Contact: +IsuruPereraWSO2 <https://www.google.com/+IsuruPereraWSO2/about> > -- Malaka Gangananda Software Engineer Intern mobile:0713564340 [email protected] <[email protected]>
Benchmark (element) (size) Mode Cnt Score Error Units GSVsConSkipListMap.sizeCallConSkipList N/A 100 avgt 20 877.625 ± 25.773 ns/op GSVsConSkipListMap.sizeCallConSkipList:·stack N/A 100 avgt NaN --- GSVsConSkipListMap.sizeCallConSkipList N/A 1000 avgt 20 12996.301 ± 551.250 ns/op GSVsConSkipListMap.sizeCallConSkipList:·stack N/A 1000 avgt NaN --- GSVsConSkipListMap.sizeCallConSkipList N/A 10000 avgt 20 158088.796 ± 13281.221 ns/op GSVsConSkipListMap.sizeCallConSkipList:·stack N/A 10000 avgt NaN --- GSVsConSkipListMap.sizeCallConSkipList N/A 15000 avgt 20 321088.363 ± 83457.575 ns/op GSVsConSkipListMap.sizeCallConSkipList:·stack N/A 15000 avgt NaN --- GSVsConSkipListMap.sizeCallGCHashMap N/A 100 avgt 20 30.233 ± 9.497 ns/op GSVsConSkipListMap.sizeCallGCHashMap:·stack N/A 100 avgt NaN --- GSVsConSkipListMap.sizeCallGCHashMap N/A 1000 avgt 20 30.862 ± 8.930 ns/op GSVsConSkipListMap.sizeCallGCHashMap:·stack N/A 1000 avgt NaN --- GSVsConSkipListMap.sizeCallGCHashMap N/A 10000 avgt 20 78.022 ± 21.543 ns/op GSVsConSkipListMap.sizeCallGCHashMap:·stack N/A 10000 avgt NaN --- GSVsConSkipListMap.sizeCallGCHashMap N/A 15000 avgt 20 91.657 ± 34.659 ns/op GSVsConSkipListMap.sizeCallGCHashMap:·stack N/A 15000 avgt NaN --- GSVsConSkipListMapPutOpNGetOp.getCallConSkipList 20000 N/A avgt 20 891.813 ± 302.100 ns/op GSVsConSkipListMapPutOpNGetOp.getCallConSkipList:·stack 20000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.getCallConSkipList 50000 N/A avgt 20 737.880 ± 250.744 ns/op GSVsConSkipListMapPutOpNGetOp.getCallConSkipList:·stack 50000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.getCallConSkipList 90000 N/A avgt 20 685.134 ± 223.527 ns/op GSVsConSkipListMapPutOpNGetOp.getCallConSkipList:·stack 90000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.getCallGSHashMap 20000 N/A avgt 20 379.857 ± 8.894 ns/op GSVsConSkipListMapPutOpNGetOp.getCallGSHashMap:·stack 20000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.getCallGSHashMap 50000 N/A avgt 20 401.518 ± 8.001 ns/op GSVsConSkipListMapPutOpNGetOp.getCallGSHashMap:·stack 50000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.getCallGSHashMap 90000 N/A avgt 20 379.263 ± 7.934 ns/op GSVsConSkipListMapPutOpNGetOp.getCallGSHashMap:·stack 90000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.putCallConSkipList 20000 N/A avgt 20 2497.419 ± 633.506 ns/op GSVsConSkipListMapPutOpNGetOp.putCallConSkipList:·stack 20000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.putCallConSkipList 50000 N/A avgt 20 4222.999 ± 93.101 ns/op GSVsConSkipListMapPutOpNGetOp.putCallConSkipList:·stack 50000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.putCallConSkipList 90000 N/A avgt 20 4343.781 ± 87.996 ns/op GSVsConSkipListMapPutOpNGetOp.putCallConSkipList:·stack 90000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.putCallGSHashMap 20000 N/A avgt 20 5803.204 ± 1204.316 ns/op GSVsConSkipListMapPutOpNGetOp.putCallGSHashMap:·stack 20000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.putCallGSHashMap 50000 N/A avgt 20 3980.010 ± 283.547 ns/op GSVsConSkipListMapPutOpNGetOp.putCallGSHashMap:·stack 50000 N/A avgt NaN --- GSVsConSkipListMapPutOpNGetOp.putCallGSHashMap 90000 N/A avgt 20 4016.611 ± 303.757 ns/op GSVsConSkipListMapPutOpNGetOp.putCallGSHashMap:·stack 90000 N/A avgt NaN ---
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
