[
https://issues.apache.org/jira/browse/ARTEMIS-1151?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15999718#comment-15999718
]
ASF GitHub Bot commented on ARTEMIS-1151:
-----------------------------------------
GitHub user franz1981 opened a pull request:
https://github.com/apache/activemq-artemis/pull/1256
ARTEMIS-1151 Adapting TimedBuffer and NIO Buffer Pooling
This is the list of improvements:
- NIO/ASYNCIO new TimedBuffer with adapting batch window heuristic
- NIO/ASYNCIO improved TimedBuffer write monitoring with lightweight
concurrent performance counters
- NIO/ASYNCIO journal/paging operations benefit from less buffer copy
- NIO/ASYNCIO any buffer copy is always performed with raw batch copy using
SIMD instrinsics (System::arrayCopy) or memcpy under the hood
- NIO improved clear buffers using SIMD instrinsics (Arrays::fill) and/or
memset
- NIO journal operation perform by default TLABs allocation pooling (off
heap) retaining only the last max sized buffer
- NIO improved file copy operations using zero-copy FileChannel::transfertTo
- NIO improved zeroing using pooled single OS page buffer to clean the file
+ pwrite (on Linux)
- NIO deterministic release of unpooled direct buffers to avoid OOM errors
due to slow GC
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/franz1981/activemq-artemis buffer_pooling
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/activemq-artemis/pull/1256.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1256
----
commit 25791c304a794d9c7801620cbf7cecdd9c19c0c8
Author: Francesco Nigro <[email protected]>
Date: 2017-05-02T09:47:44Z
ARTEMIS-1151 Adapting TimedBuffer and NIO Buffer Pooling
----
> Adapting TimedBuffer and NIO Buffer Pooling
> -------------------------------------------
>
> Key: ARTEMIS-1151
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1151
> Project: ActiveMQ Artemis
> Issue Type: Improvement
> Components: Broker
> Reporter: Francesco Nigro
> Assignee: Francesco Nigro
> Priority: Minor
>
> This is the list of improvements:
> - NIO/ASYNCIO new TimedBuffer with adapting batch window heuristic
> - NIO/ASYNCIO improved TimedBuffer write monitoring with lightweight
> concurrent performance counters
> - NIO/ASYNCIO journal/paging operations benefit from less buffer copy
> - NIO/ASYNCIO any buffer copy is always performed with raw batch copy using
> SIMD instrinsics (System::arrayCopy) or memcpy under the hood
> - NIO improved clear buffers using SIMD instrinsics (Arrays::fill) and/or
> memset
> - NIO journal operation perform by default TLABs allocation pooling (off
> heap) retaining only the last max sized buffer
> - NIO improved file copy operations using zero-copy FileChannel::transfertTo
> - NIO improved zeroing using pooled single OS page buffer to clean the file +
> pwrite (on Linux)
> - NIO deterministic release of unpooled direct buffers to avoid OOM errors
> due to slow GC
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)