[
https://issues.apache.org/jira/browse/ARTEMIS-1383?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16152496#comment-16152496
]
ASF GitHub Bot commented on ARTEMIS-1383:
-----------------------------------------
Github user franz1981 commented on the issue:
https://github.com/apache/activemq-artemis/pull/1505
@gemmellr Yes, ArrayDeque is a top performer, especially with long running
constant loads.
The only downside is that it doubles the size each time is full, so it
could create a serious amount of garbage and latencies spikes due to the cost
of migrating the elements to the enlarged size.
> Improved Priority queue
> -----------------------
>
> Key: ARTEMIS-1383
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1383
> Project: ActiveMQ Artemis
> Issue Type: Improvement
> Components: Broker
> Reporter: Francesco Nigro
> Assignee: Francesco Nigro
>
> The original PriorityLinkedList implementation is based on a double linked
> list implementation that suffer of:
> * fragmentation along the heap
> * pointer chasing due to the presence of nodes
> * allocation heavy (ie each add operation forces allocation of nodes)
> * high hidden (ie the nodes) memory footprint that lead to wrong memory
> estimations
> It is possible to provide a specialized chunked implementation that can
> address all these issues while providing a better performance (throughput,
> latency and memory footprint wise).
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)