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/05/07 07:14:04 UTC

[jira] [Created] (ARTEMIS-1151) Adapting TimedBuffer and NIO Buffer Pooling

Francesco Nigro created ARTEMIS-1151:
----------------------------------------

             Summary: 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)