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

Michael Shuler edited comment on CASSANDRA-13896 at 9/22/17 8:34 PM:
---------------------------------------------------------------------

I set to 4.x fix version, since this is the appropriate version for new 
features and improvements. It's possible this change is minor enough to go into 
3.11.x, but I'll leave that up to the developers. Thanks!


was (Author: mshuler):
I set to 4.x fix version, since this is the appropriate version new features 
and improvements. It's possible this change is minor enough to go into 3.11.x, 
but I'll leave that up to the developers. Thanks!

> Improving Cassandra write performance  
> ---------------------------------------
>
>                 Key: CASSANDRA-13896
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13896
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Local Write-Read Paths
>         Environment: Skylake server with 2 sockets, 192GB RAM, 3xPCIe SSDs
> OS: Centos 7.3 
> Java: Oracle JDK1.8.0_121
>            Reporter: Prince Nana Owusu Boateng
>             Fix For: 4.x
>
>         Attachments: Screen Shot 2017-09-22 at 11.22.43 AM.png
>
>
> During our Cassandra performance testing, we see high percentage of the CPU 
> spent in *org.apache.cassandra.utils.memory.SlabAllocator.allocate(int, 
> OpOrder Group) * method.  Appears to be high contention of the 
> *<nextFreeOffset>* atomic Integer in write workloads.   This structure is 
> used by the threads for keeping track of the region bytebuffer allocation.  
> When the contention appears, adding more clients, modifications of write 
> specific parameters does not change write throughput performance.  Attached 
> are the details of Java Flight Recorder (JFR), showing hot functions.   When 
> we see this contention, we still have plenty of CPU and throughput left ( 
> *<20%*  Total average CPU utilization and * <11%* of the storage write total 
> throughput).   This occurs on Cassandra 3.10.0-src version using the 
> Cassandra-Stress.
> Proposal:
> We will like to introduce a solution which eliminates the atomic operations 
> on the *<nextFreeOffset>* atomic Integer. This implementation will allow 
> concurrent allocation of bytebuffers without an atomic compareAndSet and 
> incrementAndGet operations. The solution is expected to increase overall 
> write performance while improving CPU utilization.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to