[ 
https://issues.apache.org/jira/browse/HBASE-15453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lars Hofhansl updated HBASE-15453:
----------------------------------
    Description: 
In HBASE-10015 back then I found that intrinsic locks (synchronized) in 
StoreScanner are slower that explicit locks.

I was surprised by this. To make sure I added a simple perf test and many folks 
ran it on their machines. All found that explicit locks were faster.

Now... I just ran that test again. On the latest JDK8 I find that now the 
intrinsic locks are significantly faster:
(OpenJDK Runtime Environment (build 1.8.0_72-b15))

Explicit locks:
10 runs  mean:2223.6 sigma:72.29412147609237

Intrinsic locks:
10 runs  mean:1865.3 sigma:32.63755505548784

I confirmed the same with timing some Phoenix scans. We can save a bunch of 
time by changing this back 

Arrghhh... So maybe it's time to revert this now...?

(Note that in trunk due to [~ram_krish]'s work, we do not lock in StoreScanner 
anymore)

I'll attach the perf test and a patch that changes lock to synchronized, if 
some folks could run this on 0.98, that'd be great.


  was:
In HBASE-10015 back then I found that intrinsic locks (synchronized) in 
StoreScanner are slower that explicit locks.

I was surprised by this. To make sure I added a simple perf test and many folks 
ran it on their machines. All found that explicit locks were faster.

Now... I just ran that test again. On the latest JDK8 I find that now the 
intrinsic locks are significantly faster:

Explicit locks:
10 runs  mean:2223.6 sigma:72.29412147609237

Intrinsic locks:
10 runs  mean:1865.3 sigma:32.63755505548784

I confirmed the same with timing some Phoenix scans. We can save a bunch of 
time by changing this back 

Arrghhh... So maybe it's time to revert this now...?

(Note that in trunk due to [~ram_krish]'s work, we do not lock in StoreScanner 
anymore)

I'll attach the perf test and a patch that changes lock to synchronized, if 
some folks could run this on 0.98, that'd be great.



> Considering reverting HBASE-10015 - reinstance synchronized in StoreScanner
> ---------------------------------------------------------------------------
>
>                 Key: HBASE-15453
>                 URL: https://issues.apache.org/jira/browse/HBASE-15453
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Lars Hofhansl
>         Attachments: 15453-0.98.txt
>
>
> In HBASE-10015 back then I found that intrinsic locks (synchronized) in 
> StoreScanner are slower that explicit locks.
> I was surprised by this. To make sure I added a simple perf test and many 
> folks ran it on their machines. All found that explicit locks were faster.
> Now... I just ran that test again. On the latest JDK8 I find that now the 
> intrinsic locks are significantly faster:
> (OpenJDK Runtime Environment (build 1.8.0_72-b15))
> Explicit locks:
> 10 runs  mean:2223.6 sigma:72.29412147609237
> Intrinsic locks:
> 10 runs  mean:1865.3 sigma:32.63755505548784
> I confirmed the same with timing some Phoenix scans. We can save a bunch of 
> time by changing this back 
> Arrghhh... So maybe it's time to revert this now...?
> (Note that in trunk due to [~ram_krish]'s work, we do not lock in 
> StoreScanner anymore)
> I'll attach the perf test and a patch that changes lock to synchronized, if 
> some folks could run this on 0.98, that'd be great.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to