[ https://issues.apache.org/jira/browse/HBASE-25998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17361973#comment-17361973 ]
Bharath Vissapragada commented on HBASE-25998: ---------------------------------------------- Redid the experiments with JDK-11 (to account for any latest monitor performance enhancements) and I see similar numbers. Also, the numbers above are for {{-t 256}} which implies heavy contention. It seems like the patch performs well under heavy load and the gap narrows with fewer threads (which I guess is expected), but even with very low concurrency the patch seems to out perform the current state. > Revisit synchronization in SyncFuture > ------------------------------------- > > Key: HBASE-25998 > URL: https://issues.apache.org/jira/browse/HBASE-25998 > Project: HBase > Issue Type: Improvement > Components: Performance, regionserver, wal > Affects Versions: 3.0.0-alpha-1, 1.7.0, 2.5.0 > Reporter: Bharath Vissapragada > Assignee: Bharath Vissapragada > Priority: Major > Attachments: monitor-overhead-1.png, monitor-overhead-2.png > > > While working on HBASE-25984, I noticed some weird frames in the flame graphs > around monitor entry exit consuming a lot of CPU cycles (see attached > images). Noticed that the synchronization there is too coarse grained and > sometimes unnecessary. I did a simple patch that switched to a reentrant lock > based synchronization with condition variable rather than a busy wait and > that showed 70-80% increased throughput in WAL PE. Seems too good to be > true.. (more details in the comments). -- This message was sent by Atlassian Jira (v8.3.4#803005)