You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Francesco Nigro (JIRA)" <ji...@apache.org> on 2017/07/28 09:37:00 UTC

[jira] [Updated] (ARTEMIS-1307) Improve performance of OrderedExecutor

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

Francesco Nigro updated ARTEMIS-1307:
-------------------------------------
    Description: 
The current ordered executor is using ConcurrentLinkedQueue that:
- has expensive queue::size operation (ie O( n ))
- has node instances scattered in the heap  

There are faster and cheaper alternatives in specialized libraries (eg JCtools) that could be used instead of it to be more friendly with the GC and to provide more throughput too when CPU bound.

  was:
The current ordered executor is using ConcurrentLinkedQueue that:
- has expensive queue::size operation (ie O(n))
- has node instances scattered in the heap  

There are faster and cheaper alternatives in specialized libraries (eg JCtools) that could be used instead of it to be more friendly with the GC and to provide more throughput too when CPU bound.


> Improve performance of OrderedExecutor
> --------------------------------------
>
>                 Key: ARTEMIS-1307
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1307
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Broker
>    Affects Versions: 2.2.0
>            Reporter: Francesco Nigro
>            Assignee: Francesco Nigro
>            Priority: Minor
>
> The current ordered executor is using ConcurrentLinkedQueue that:
> - has expensive queue::size operation (ie O( n ))
> - has node instances scattered in the heap  
> There are faster and cheaper alternatives in specialized libraries (eg JCtools) that could be used instead of it to be more friendly with the GC and to provide more throughput too when CPU bound.



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