[ https://issues.apache.org/jira/browse/CASSANDRA-12787?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15575845#comment-15575845 ]
T Jake Luciani edited comment on CASSANDRA-12787 at 10/14/16 4:53 PM: ---------------------------------------------------------------------- I ran a test on a 24 core machine with 64G ram and wasn't able to see a difference with the following [branch|https://github.com/tjake/cassandra/tree/instanceof-fix]. I was using a pure write workload. !instaceof.png! was (Author: tjake): I ran a test on a 24 core machine with 64G ram and wasn't able to see a difference with the following [branch|https://github.com/tjake/cassandra/tree/instanceof-fix]. I was using a pure write workload > Reduce instanceOf() type checking to improve performance > -------------------------------------------------------- > > Key: CASSANDRA-12787 > URL: https://issues.apache.org/jira/browse/CASSANDRA-12787 > Project: Cassandra > Issue Type: Improvement > Environment: The tests and examples stated were run on: > Intel (R) Xeon (R) CPU E5-2699 v3 @ 2.30GHz, HT Enabled > Oracle JDK 1.8 > Cassandra 3.10-SNAPSHOT > Linux kernel 4.7 > Reporter: shylaja kokoori > Fix For: 3.x > > Attachments: instanceof.png, reduce_instanceof_typechecking.pdf > > > While performance profiling Cassandra with cassandra-stress test on a pure > write workload, we noticed that one of the hot methods for Cassandra server > is the compareTo( PartitionPosition pos) function in > org.apache.cassandra.db.DecoratedKey. The actual root cause of the problem is > a slowdown in Java's instanceof operator. > Our initial performance testing using a hacked JVM shows about 61% increase > in throughput and about 15% reduction in 99 percentile latency. Data shows > that improvements are from the removal of thread contention caused by > Instanceof operator. > Currently, we are working on a JDK fix to solve this issue. In the meantime, > we think it will be beneficial to address this issue at Java application > level as well. We are in the process of creating a patch to Cassandra > replacing instanceof check with virtual method calls. The patch will be > available in this thread for review soon. Please let us know your feedback > and comments. > For more details please refer to the attached pdf. -- This message was sent by Atlassian JIRA (v6.3.4#6332)