[ 
https://issues.apache.org/jira/browse/HBASE-18542?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16136211#comment-16136211
 ] 

Amit Patel commented on HBASE-18542:
------------------------------------

Added patch [^HBASE-18542.HBASE-14070.HLC.001.patch] that benchmarks 
performance of Clock#now and Clock#update under both single threaded and multi 
threaded cases. Below is a summary of the performance (where the number is the 
multiplicative factor of how much longer it took compared to the system clock). 

||System clock||System monotonic|Hybrid logical clock||
|Clock#now single threaded|1.01|1.41|
|Clock#update single threaded|1.01|1.36|
|Clock#now multi threaded|1.23|1.76|
|Clock#update multi threaded|2.28|2.20|


> [HLC] Performance microbenchmarks
> ---------------------------------
>
>                 Key: HBASE-18542
>                 URL: https://issues.apache.org/jira/browse/HBASE-18542
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Appy
>            Assignee: Amit Patel
>         Attachments: HBASE-18542.HBASE-14070.HLC.001.patch
>
>
> Need tests to benchmark performance of Clock#now() and update() functions 
> (for all types of clocks).
> If update() is too costly, we can do optimizations in 
> ExecuteProceduresRemoteCall#call(), HRegion#replayRecoveredEdits() and other 
> places where we call update() in loop. Instead, it might be faster to 
> calculate max timestamp in loop and call update() just once.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to