activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Francesco Nigro (JIRA)" <j...@apache.org>
Subject [jira] [Closed] (ARTEMIS-1214) Improve performance of read on Paging
Date Thu, 22 Jun 2017 09:03:00 GMT

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

Francesco Nigro closed ARTEMIS-1214.
------------------------------------

> Improve performance of read on Paging
> -------------------------------------
>
>                 Key: ARTEMIS-1214
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1214
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>            Reporter: Francesco Nigro
>            Assignee: Francesco Nigro
>
> Speedup reads trying to exploit the OS Page Cache (eg LMDB does something similar) while
reading a Page.
> It is accomplished using READ-ONLY mapped regions on the written Page instead of using
a single SequentialFile::read with a big ( === file size) direct ByteBuffer.
> The benefits are:
> - avoid allocating the direct ByteBuffer (no OOM errors while reading tons of pages)
> - avoid the additional copy from the Page Cache to the direct ByteBuffer
> - makes uses of the last written (OS) pages directly, improving the read speed
> - avoid a slow JNI call (avoid long time to safepoint issues)
> This can work only with SequentialFile implementations that rely on the OS Page Cache
(only MAPPED and NIO right now).
> Depending on the file size and the OS the read speedup can be until 6X of the original
version.
> The memory footprint is improved in way dependent by OS settings (how many dirty pages
allowed, OS Pages size etc etc), but anyway out of the JVM boundaries.



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

Mime
View raw message