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

Francesco Nigro edited comment on ARTEMIS-1307 at 4/11/24 8:00 PM:
-------------------------------------------------------------------

Hi [~jbertram] I can if there's still the need for such: I mean, if it proves 
to be a costy component which would benefit by it.

I remember that most of the operations in Artemis (apart from OpenWire) use to 
run on the Netty Event Loops: if this thing still hold, probably it won't 
matter.
If it has changed instead (or there are other performance sentitive paths which 
run on the executors) I suppose you need to profile a use care and make sure 
that the bottleneck is on the OrderedExecutor's tasks.


was (Author: nigrofranz):
Hi [~jbertram] I can if there's still the need for such: I mean, if it proves 
to be a costy component which would benefit by it.

I remember that most of the operations in Artemis (apart from OpenWire) use to 
run on the Netty Event Loops: if this thing still hold, probably it won't 
matter.
If it has changed than, I suppose you need to profile to make sure that one 
bottleneck is on the OrderedExecutor's tasks.

> 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
(v8.20.10#820010)

Reply via email to