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

Dmitry Konstantinov updated CASSANDRA-21645:
--------------------------------------------
    Description: 
org.apache.cassandra.transport.Flusher#queued is consumed by single thread - 
Netty even loop thread responsible for the correspondent channel handling, so 
we can replace ConcurrentLinkedQueue with more specialized version such as 
org.jctools.queues.MpscUnboundedArrayQueue. It also remove an allocation 
present for ConcurrentLinkedQueue.
CPU usage in flamegraph ("Flusher\.enqueue" pattern), before: 1.17%, after: 
0.46% 

 [^mpsc_flusher_before_cpu.html] 


  was:org.apache.cassandra.transport.Flusher#queued is consumed by single 
thread - Netty even loop thread responsible for the correspondent channel 
handling, so we can replace ConcurrentLinkedQueue with more specialized version 
such as org.jctools.queues.MpscUnboundedArrayQueue


> Use MPSC queue in native transport flusher
> ------------------------------------------
>
>                 Key: CASSANDRA-21645
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-21645
>             Project: Apache Cassandra
>          Issue Type: Improvement
>          Components: Messaging/Client
>            Reporter: Dmitry Konstantinov
>            Assignee: Dmitry Konstantinov
>            Priority: Normal
>             Fix For: 6.0.x, 7.0
>
>         Attachments: mpsc_flusher_after_cpu.html, mpsc_flusher_before_cpu.html
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> org.apache.cassandra.transport.Flusher#queued is consumed by single thread - 
> Netty even loop thread responsible for the correspondent channel handling, so 
> we can replace ConcurrentLinkedQueue with more specialized version such as 
> org.jctools.queues.MpscUnboundedArrayQueue. It also remove an allocation 
> present for ConcurrentLinkedQueue.
> CPU usage in flamegraph ("Flusher\.enqueue" pattern), before: 1.17%, after: 
> 0.46% 
>  [^mpsc_flusher_before_cpu.html] 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to